Loading...

Cómo hacer scraping con ASP clásico

Ez.Biz Cloudware
Blog de ASP Clásico

Cómo hacer scraping con ASP clásico

Código ASP clásico

Por ASP clásico / 02/04/2023 @ 13:59:07 / 1362 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)
%>





Descubre más sobre cómo simplificar y optimizar tu trabajo empresarial en el Blog de CoreASP.

asp, scraping web, MSXML2, ServerXMLHTTP, HTTP GET, parsing, extract content, lock, unlock, application object, caching, scraping con ASP clásico

Descargo de Responsabilidad:

El contenido y los recursos que ofrecemos en CoreASP están destinados únicamente a proporcionar herramientas y ejemplos prácticos para el desarrollo en ASP Clásico. Esta información es de carácter general y no debe considerarse asesoramiento profesional o técnico específico para tu proyecto. Aunque hacemos todo lo posible por asegurar la calidad y precisión de los recursos compartidos, no garantizamos que sean completamente libres de errores o que se ajusten perfectamente a todas las situaciones. CoreASP no se responsabiliza por cualquier pérdida, daño o inconveniente derivado del uso directo o indirecto de los recursos o información proporcionada. Además, CoreASP no respalda ni asume responsabilidad por enlaces o contenido de terceros que puedan estar referenciados en nuestra plataforma. Todos los derechos de propiedad intelectual sobre el contenido y recursos publicados en CoreASP pertenecen a CoreASP o a sus respectivos propietarios, y su uso está sujeto a las condiciones de la licencia especificada para cada recurso. Nos reservamos el derecho de modificar este descargo de responsabilidad en cualquier momento sin previo aviso. Para más detalles, consulta el documento completo de términos y condiciones.