Cómo hacer scraping con ASP clásico
Código ASP clásico
- Por Programador ASP clásico /
- 02/04/2023 @ 13:59:07 /
- 1142 visitas
El scraping es una técnica utilizada en la informática para obtener información de manera automatizada desde internet. Consiste en la extracción de datos de una página web y su posterior análisis, lo que permite obtener información útil para diferentes fines, como el análisis de mercado, la investigación de competidores, el seguimiento de precios, entre otros. El scraping se realiza mediante programas y herramientas que acceden a los datos de una página web y los extraen de manera estructurada y organizada, lo que permite su posterior tratamiento y análisis. Esta técnica ha cobrado una gran importancia en la actualidad debido al aumento de la cantidad de información disponible en internet y la necesidad de procesarla de manera eficiente y rápida.
Código ASP clásico para scraping the URL externa
La función LoadThePage se encarga de cargar la página web en una variable de texto utilizando el protocolo HTTP GET y la biblioteca MSXML2.ServerXMLHTTP. La función GrabTheContent toma como entrada el texto cargado en la página web y busca un patrón de inicio y finalización en la página para extraer el contenido entre ellos. La función devuelve el contenido encontrado.
En el cuerpo del código se declara y se inicializa una variable de texto que contiene la dirección URL de la página que se va a hacer web scraping. Si la página se ha actualizado hace más de una hora, se carga la página web utilizando la función LoadThePage y se extrae el contenido utilizando la función GrabTheContent. El contenido extraído se almacena en una variable de aplicación para evitar cargar la página web innecesariamente en futuras solicitudes. Si la página se ha actualizado hace menos de una hora, se utiliza el contenido almacenado previamente. Finalmente, el contenido extraído se muestra en la página web utilizando la función Response.Write.
<%
FUNCTION LoadThePage(strPageText, strInputURL)
Set objXMLHTTP = Server.CreateObject("MSXML2.ServerXMLHTTP")
objXMLHTTP.Open "GET", strInputURL, False
objXMLHTTP.Send
strPageText = objXMLHTTP.responseText
Set objXMLHTTP = Nothing
End FUNCTION
FUNCTION GrabTheContent(strStart, strEnd)
Dim strStartPos, strEndPos, strLength
strStartPos = 0
strEndPos = 0
strLength = 0
'Find the Start Position of the Search String
strStartPos = instr(strPageText,strStart)
'Starting from the Search String start position and call it the end position
strEndPos = instr(strStartPos, strPageText, strEnd)
'Compute the length of the string in between the start and end positions
strLength = strEndPos - strStartPos
'filter the content, use trim to eliminate leading and trailing spaces
myContent = trim(mid(strPageText,strStartPos, len(strStart))) & "<br/>" & vbCRLF
myContent = myContent & trim(mid(strPageText,strStartPos + len(strStart), StrLength - len(strStart))) & "<br/>" & vbCRLF
GrabTheContent = myContent
End FUNCTION
'Declare the string used to hold the HTTP and the start/end strings
Dim strPageText, strStart, strEnd
'Declare and initialize the string used to hold the Input Page URL
Dim strInputURL
if DateDiff("h", Application("updated"), Now()) >=1 then
strInputURL = "http://birdsinbackyards.net/species/Cacatua-roseicapilla"
'Load the desired page into a string
LoadThePage strPageText, strInputURL
strHTML = GrabTheContent("<h5>Description</h5>","<h5>Similar species</h5>")
Application.Lock
Application("content") = strHTML
Application("updated") = Now()
Application.Unlock
end if
strHTML = Application("content")
response.write (strHTML)
%>
tags: asp, scraping web, MSXML2, ServerXMLHTTP, HTTP GET, parsing, extract content, lock, unlock, application object, caching, scraping con ASP clásico
En esta sección encontrarás una mezcla de códigos recopilados de fuentes públicas de Internet y otros creados por ASP TEAM. Compartimos recursos útiles de buena fe para formar una base de conocimiento en el desarrollo de aplicaciones en ASP Clásico.