Recientemente he estado aprendiendo Python y estoy metiendo mi mano en la construcción de un raspador de web. No es nada lujoso en absoluto; su único propósito es sacar los datos de un sitio web de apuestas y tener estos datos en Excel.
La mayoría de los problemas se pueden resolver y estoy teniendo un buen lío. Sin embargo, estoy llegando a un obstáculo masivo sobre un problema. Si un sitio carga una tabla de caballos y enumera los precios actuales de las apuestas, esta información no se encuentra en ningún archivo fuente. La pista es que estos datos están en vivo a veces, y los números se actualizan obviamente desde algún servidor remoto. El HTML en mi PC simplemente tiene un agujero donde sus servidores están empujando a través de todos los datos interesantes que necesito.
Ahora mi experiencia con el contenido web dinámico es baja, por lo que esto es algo que estoy teniendo problemas para entender.
Creo que Java o Javascript es una clave, esto aparece a menudo.
El rascador es simplemente un motor de comparación de probabilidades. Algunos sitios tienen API, pero necesito esto para aquellos que no. Estoy usando la biblioteca scrapy con Python 2.7
Me disculpo si esta pregunta es demasiado abierta. En resumen, mi pregunta es: ¿cómo se puede usar scrapy para raspar estos datos dinámicos para que pueda usarlos? ¿Para poder raspar estos datos de probabilidades de apuestas en tiempo real?
Firefox
extensiones como httpFox
o liveHttpHeaders
y cargue una página que esté usando la solicitud ajax. Scrapy no identifica automáticamente las solicitudes de ajax, debe buscar manualmente la URL de ajax adecuada y luego solicitarla con eso.