2009-03-26 15 views

Respuesta

9

Dos de mis herramientas favoritas para el web scraping de Python son Scrapy y Mechanize. Cada uno de estos proyectos tiene su propio tutorial y mejores prácticas.

+1

También hay una versión Ruby de Mechanize. –

+0

Gracias por Scrapy. Parece genial – Alagu

5

No es una herramienta, de verdad, pero una buena discusión es el libro de Michael Shrenk, Webbots, Spiders, and Screen Scrapers.

El libro tiene muy buen éxito en su misión declarada: explicar cómo construir bots web simples y operarlos de acuerdo con los estándares de la comunidad. No es todo lo que necesitas saber, pero es la mejor introducción que he visto. El foco está en bots simples de un solo hilo. Hay una pequeña mención sobre el uso de múltiples bots que almacenan datos en un repositorio central, pero no se discuten los problemas que implica escribir bots multiproceso o distribuidos que pueden procesar cientos de páginas por segundo.

Le recomiendo que lea este libro si está interesado en escribir Web bots, incluso si no está familiarizado con PHP o tiene la intención de hacerlo. Pero asegúrese de no esperar más que las ofertas del libro.

4

Examine el uso de lxml en lugar de BeautifulSoup. A pesar de su nombre, también es para analizar y raspar HTML. Es mucho, mucho más rápido que BeautifulSoup, e incluso maneja HTML "roto" mejor que BeautifulSoup (su reclamo de fama - lxml simplemente no es tan vocal al respecto). También tiene una API de compatibilidad para BeautifulSoup si no desea aprender la API lxml.

Ian Blicking agrees.

No hay ninguna razón para usar BeautifulSoup, a menos que esté en Google App Engine o algo en que no esté permitido nada que no sea puramente Python.

Cuestiones relacionadas