Este artículo presenta el tutorial compartido de lotes que arrastran una página de lista. Echemos un vistazo al tutorial detallado a continuación. Los amigos que lo necesitan pueden referirse a él.
Algunas personas son un tesoro al rastrear programas, pero todavía los venden por TND. ¡Es realmente cierto que estos tipos lo son! Tal vez lo siguiente es un poco malo
Lo siguiente no tiene una función de escritura a la tienda, y ha alcanzado este punto. La función de entrada es muy simple. Compléntelo usted mismo si lo necesita. ¡Mejore otras funciones usted mismo! Copie el código y ejecutarlo directamente para ver el efecto
Dim URL, list_pagecode, array_articleid, i, artículoid
Dim content_pagecode, content_tempcode
Dim content_categoryID, content_categoryName, borderID, classid, bordername, classname
Dim articletitle, articleauthor, artículo desde
Url = "http://www.webasp.net/article/class/1.htm"
List_pageCode = gethttppage (url)
List_pageCode = regexPtext (list_pageCode, "imprimir", "
List_pageCode = regexPtext (list_pageCode, "'Obtenga el enlace del artículo de la página de la lista actual para separarla
Array_articleid = split (list_pageCode, ",") 'Crear una matriz y almacenar la identificación del artículo
Para i = 0 a Ubound (array_articleid) -1
ArtículoD = array_arrayid (i) 'Arrayid
Content_pageCode = gethttppage ("http://www.webasp.net/article/" & articleID) 'Obtenga el contenido de la página del artículo
'===================================================
Content_tempcode = regexPtext (content_pageCode, "tutorial técnico >>", ">> contenido", 0)
Content_categoryID = regexPtext (content_pageCode, "", 1)
BorderID = split (content_categoryId, ",") (0) 'ID de clase grande
Classid = split (content_categoryId, ",") (1) 'ID de subclase
'============== Verifique si existe la categoría principal. Inicio ==================
'Si no existe, ingrese la base de datos
'============== Compruebe si la categoría principal existe en final ===================
'Response.Write (Borderid & "," & Classid & "
")
Content_CategoryName = RegExPtext (content_pageCode, "/'>", "", 1)
Bordername = split (content_categoryName, ",") (0) 'Nombre de clase grande
Classname = split (content_categoryName, ",") (1) 'Nombre de la subclase
'============== Verifique si la subclase existe inicio ==================
'Si no existe, ingrese la base de datos
'============== Verifique si la subclase existe final ==================
'======================================================
'===========================================================
Articletitle = regexPtext (content_pageCode, " ", " ", 0)
Articleauthor = regexPtext (content_pagecode, "autor:", "", 0)
ArtículoFrom = RegexPtext (content_pageCode, "Fuente:", "", 0)
ArticleContent = regexPtext (content_pageCode, "", "" & vbcrlf & "" & vbcrlf & "", 0)
'=============================================================
Response.Write (Articletititle "y"
")
Respuesta.flush ()
Próximo
Se adjuntan varias funciones:
Función gethttppage (URL)If (isobJinstalled ("microsoft.xmlhttp") = false) entonces
Respuesta. Escribe "
El servidor no admite componente Microsoft.xmlhttp "
Err.Clear
Respuesta.
Final si
En el currículum de error siguiente
Dim http
Establecer http = server.createObject ("msxml2.xmlhttp")
Http.open "Get", URL, falso
Http.send ()
If (http.readystate4) entonces
Función de salida
Final si
gethttppage = bytestobstr (http.ResponseBody, "GB2312")
Establecer http = nada
If (err.number0) entonces
Respuesta. Escribe "
Se produjo un error al obtener el contenido del archivo "
'Respuesta.
Err.Clear
Final si
Función final
Function byTestObstr (CodeBody, Codeset)
Dim objstream
Establecer objstream = server.createObject ("ADODB.Stream")
objstream.type = 1
objstream.mode = 3
objstream.
objstream.write CodeBody
objstream.position = 0
objstream.type = 2
objstream.charset = Codeset
Bytestobstr = objstream.readText
objstream.close
Establecer objstream = nada
Función final
'=====================================================================
'Función: verifique si el componente ha sido instalado
'Valor de retorno: verdadero ---- instalado
'Falso --- no instalado
'=====================================================================
Función isobjinstalled (objname)
En el currículum de error siguiente
Isobjinstalled = falso
Err = 0
Dim testobj
Establecer testobj = server.createObject (objname)
If (0 = err) entonces isobJinstalled = true
Establecer testobj = nada
Err = 0
Función final
Function RegExPtext (strng, strstart, strend, n)
Dim regex, coincidente, partidos, retén
Establecer regex = new Regexp
regex.pattern = strstart & "([/s/s]*?)" & Strend
regex.ignorecase = true
regex.global = verdadero
Establecer coincidencias = regex.execute (strng)
Para cada partido en partidos
If (n = 1) entonces
Retstr = retstr & regex.replace (match.Value, "$ 1") y ",", "
DEMÁS
Retstr = retstr & regex.replace (match.Value, "$ 1")
Final si
Próximo
RegexPtext = retroceder
Establecer regex = nada
Lo anterior es la introducción de todo el contenido del tutorial compartido de lotes que se arrastran por lotes una determinada página de la lista. Espero que los conocimientos y materiales relevantes compilados por el editor sean útiles para usted. Para obtener más contenido, ¡continúe prestando atención al sitio web del canal de tecnología Wuxin!