La forma en que raspa los sitios web depende mucho de los propios sitios web. Algunos son realmente fáciles, tienen contenido bien estructurado con marcado semántico y formas bien definidas de navegar a través de contenido antiguo. Mientras que otros pueden tener estructuras HTML bastante desordenadas, que varían HTML de una página a otra, contramedidas de bot agresivas, o incluso demasiado contenido para ser rastreado por un rastreador regular.
En cualquier caso, le sugiero que use un marco de rastreo web como Scrapy, ya que maneja todo el trabajo sucio, como redes (reintentos, redirecciones, sesiones, aceleración, etc.) y otros problemas, como codificaciones de caracteres, que podrían ser un verdadero problema con el que lidiar, debido a la amplia gama de conjuntos de caracteres utilizados en la web. Con Scrapy, todo lo que tiene que hacer es escribir Spiders, definiendo qué datos desea obtener de una página y qué enlaces desea que sigan. (todo utilizando selectores CSS o XPath para indicar qué elementos desea seleccionar)
Sin embargo, si no tienes experiencia en programación, te sugiero que uses una herramienta de raspado visual como Portia. Es una herramienta de código abierto donde hace clic en los elementos que desea extraer de una página de muestra y genera un raspador web capaz de extraer datos de páginas similares, en función de los elementos en los que hizo clic.
- ¿Por qué Stack Overflow afirma resolver el problema de los 7,5 mil millones de desarrolladores cuando la población total del mundo es de 7 mil millones?
- ¿Hay sitios web similares a Quora donde podamos crear grupos cerrados y administrarlos?
- ¿Por qué crea mi espaciopace.com cargar tanto tiempo en mi computadora?
- ¿Qué es WordPress? ¿Y cuáles son los temas y complementos de WordPress?
- Al comprar dominios para un sitio web comercial, ¿solo necesitamos un .com?
Descargo de responsabilidad: trabajo en Scrapinghub, los principales encargados de Scrapy y Portia.