algorithm - tutorial - web scraping gratis
Extracción de texto del cuerpo de los sitios web, por ejemplo, extraer solo el encabezado del artÃculo y el texto, no todo el texto en el sitio (4)
Estoy buscando algoritmos que permitan la extracción de texto de sitios web. No me refiero a "strip html", ni a ninguna de las cientos de bibliotecas que lo permiten.
Entonces, por ejemplo, para un artículo de noticias me gustaría identificar el encabezado y todo el texto, pero no la sección de comentarios, etc.
¿Hay algún algoritmo para eso? ¡Gracias!
En la literatura de ciencias de la computación, este problema generalmente se conoce como segmentación de páginas o problema de detección de placas de pollos de engorde . Consulte el informe Detección de texto sin formato con las funciones de texto superficial y su publicación de blog relacionada. Además, tengo algunos informes y sitios de software marcados que abordan el problema. Además, vea esta pregunta de .
La "extracción de contenido" es un tema muy difícil. No existen estándares comunes para identificar el contenido del "artículo principal" (hay varios enfoques para hacer que HTML sea más fácil de leer para los rastreadores, por ejemplo, schema.org , pero ninguno de estos es muy popular).
Por lo tanto, resulta que si desea obtener buenos resultados, probablemente sea mejor definir sus propios selectores de XPath para cada sitio web (de noticias) que desee raspar. Aunque hay algunas API para la extracción de contenido HTML, pero como dije, es muy difícil desarrollar un algoritmo que funcione para cada sitio.
Algunas API que puedes usar:
alchemyapi.com
diffbot.com
boilerpipe-web.appspot.com
aylien.com
textracto.com
Lo que estás tratando de hacer se llama "extracción de contenido". Resultó ser un problema sorprendentemente difícil de resolver bien, y muchas soluciones ingenuas lo hacen bastante mal.
Instapaper y Readability tienen que resolver esto, y puedes aprender algo al mirar sus soluciones. También brindan servicios que usted puede aprovechar: quizás pueda subcontratar su problema y dejar que su API se encargue de ello. :)
En su defecto, una búsqueda de " extracción de contenido html " arroja una gran cantidad de resultados útiles, incluyendo una serie de documentos sobre el tema.
hay algunas herramientas de código abierto disponibles que realizan tareas similares de extracción de artículos. https://github.com/jiminoc/goose que era de código abierto por Gravity.com
Tiene información sobre la wiki y sobre la fuente que puede ver. Hay docenas de pruebas unitarias que muestran el texto extraído de varios artículos.