Ich habe kürzlich Python gelernt und tauche meine Hand in den Aufbau eines Web-Scraper. Es ist überhaupt nichts Besonderes; Der einzige Zweck besteht darin, die Daten von einer Wettwebsite zu entfernen und diese Daten in Excel zu speichern.
Die meisten Probleme sind lösbar und ich habe ein gutes kleines Durcheinander. Ich stoße jedoch in einem Punkt auf eine massive Hürde. Wenn eine Site eine Tabelle mit Pferden lädt und die aktuellen Wettpreise auflistet, befinden sich diese Informationen in keiner Quelldatei. Der Hinweis ist, dass diese Daten manchmal live sind und die Nummern offensichtlich von einem Remote-Server aktualisiert werden. Der HTML-Code auf meinem PC hat einfach eine Lücke, in der die Server alle interessanten Daten durchsuchen, die ich benötige.
Jetzt sind meine Erfahrungen mit dynamischen Webinhalten gering, daher habe ich Probleme, diesen Kopf herumzukriegen.
Ich denke, Java oder Javascript ist ein Schlüssel, der oft auftaucht.
Der Schaber ist einfach eine Quotenvergleichsmaschine. Einige Websites haben APIs, aber ich brauche diese für diejenigen, die dies nicht tun. Ich verwende die Scrapy-Bibliothek mit Python 2.7
Ich entschuldige mich, wenn diese Frage zu offen ist. Kurz gesagt, meine Frage lautet: Wie kann Scrapy verwendet werden, um diese dynamischen Daten zu kratzen, damit ich sie verwenden kann? Damit ich diese Wettquoten-Daten in Echtzeit kratzen kann?
Firefox
Erweiterungen wie httpFox
oder aus liveHttpHeaders
und laden Sie eine Seite, die eine Ajax-Anfrage verwendet. Scrapy identifiziert die Ajax-Anforderungen nicht automatisch. Sie müssen manuell nach der entsprechenden Ajax-URL suchen und diese dann anfordern.