Tutorial de raspado web con Python: consejos y trucos

https://www.kdnuggets.com/2018/02/top-news-week-0129-0204.html

Estaba buscando boletos de avión y noté que los precios de los boletos fluctúan durante el día. Traté de averiguar cuándo es el mejor momento para comprar boletos, pero no había nada en la Web que me ayudara. Creé un pequeño programa para recopilar automáticamente los datos de la web, un llamado raspador. Extrajo información para mi destino de vuelo específico en fechas predeterminadas y me notificó cuando el precio bajó.

Web raspado es una técnica utilizada para extraer datos de sitios web a través de un proceso automatizado.

Aprendí mucho de esta experiencia con Web Scraping, y quiero compartirlo.

Esta publicación está dirigida a personas interesadas en conocer los patrones de diseño, las trampas y las reglas comunes relacionadas con el raspado web. El ariticle presenta varios casos de uso y una colección de problemas típicos, como por ejemplo cómo no ser detectados, e incorrecto, y la forma de acelerar (paralelización) el rascador.

Todo irá acompañado de fragmentos de pitón , para que pueda comenzar de inmediato. Este documento también pasará por varios paquetes de python útiles.

Casos de uso

Hay muchos motivos y casos de uso por los que le gustaría raspar datos. Déjame enumerar algunos de ellos:

  • raspe las páginas de un minorista electrónico para detectar si alguna de las prendas que desea comprar obtuvo un descuento
  • compare precios de varias marcas de ropa raspando sus páginas
  • el precio de los boletos de vuelo puede variar durante el día. Uno podría rastrear el sitio web de viajes y alarmarse una vez que el precio bajó
  • analizar los sitios web de acción para responder la pregunta si la oferta inicial debe ser baja o alta para atraer a más postores o si la subasta más larga se correlaciona con una oferta final más alta

Tutorial

Estructura del tutorial:

  1. Paquetes disponibles
  2. Código básico
  3. Trampas
  4. Normas
  5. Acelerar – paralelización

Antes de comenzar: Sé NICE con los servidores; NO QUIERES chocar un sitio web.

Texto original en inglés.