Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: raytex en 23 Agosto 2015, 18:13 pm



Título: Alguien me recomienda alguna libreria para un scraper web?
Publicado por: raytex en 23 Agosto 2015, 18:13 pm
Alguien me podría recomendar alguna librería de C# para realizar  un scraper web que se logge en una pagina y saque información.

Mod: tema movido, esto no es C/C++ es .net


Título: Re: Alguien me recomienda alguna libreria para un scraper web?
Publicado por: Eleкtro en 24 Agosto 2015, 10:31 am
Para el web-scrapping, lee lo siguiente:

Cita de: Elektro
¿recorres el DOM y obtienes valores de ciertas etiquetas?

Practiamente en eso consiste el web-crawling, en parsear los documentos Html para obtener información específica.

Hay varios modos de hacerlo, la más ordinaria es utilizando las funciones built-in de .net para partir un string (String.Split) y filtrarla mediante substracciones (String.Substring, String.IndexOf, String.LastInfexOf, etc...),
otra manera sería utilizando expresiones regulares (RegEx),
y otra manera sería utilizando ciertas librerías (HtmlagilityPack en caso de .Net) para representar el árbol del documento Html orientado a objetos,
entre alguna que otra metodología más que habrá.

Dices que estás interesado en ello, pues aquí puedes ver un pequeño ejemplo con el que puedes empezar:
➢ http://foro.elhacker.net/net/leer_datos_de_una_tabla_html-t436957.0.html

Y aquí tienes el source que compartí de un web-spider que recolecta los enlaces de una página de música en particular:
[SOURCE] Plixid Leecher - By Elektro (http://foro.elhacker.net/net/source_plixid_leecher-t394703.0.html)

También existe una librería especializada en el web-scrapping para .Net, se llama aBot, aunque nunca la llegué a probar en profundidad:
➢ https://github.com/sjdirect/abot
    (también la puedes descargar por la consola de NuGet)

EDITO: Aparte de algunas Classes de .Net Framework que puedes utilizar para el parseo de Html o Xml, cómo HtmlElement o Xelement

Saludos