Scraping von Javascript-generierten Daten mit Python

8

Ich möchte einige Daten der folgenden URL mit Python abkratzen. Ссылка

Es geht um eine Zusammenfassung von Unternehmensinformationen.

Was ich kratzen möchte, wird auf der ersten Seite nicht angezeigt. Durch Klicken auf die Registerkarte "재무 제표" können Sie auf den Abschluss zugreifen. Wenn Sie auf die Registerkarte "현금 흐름표" klicken, können Sie auf "Cashflow" zugreifen.

Ich möchte die "Cash Flow" -Daten abschaben.

Allerdings werden Cash-Flow-Daten von Javascript über die URL generiert. Der folgende Link ist die URL, die versteckt ist, Ссылка

Cash-Flow-Daten werden generiert, indem ein Optionswert und ein Cookie an diese URL gesendet werden.

Wie Sie festgestellt haben, bedeutet Artikelcode = 078340 in der ersten Verbindung die Lagerbuchstabe und es gibt so viele wie 1680 Lagerbestände, die ich sammeln möchte. Ich möchte es zu einer Schleifenstruktur machen.

Gibt es eine gute Möglichkeit, Cash-Flow-Daten zu extrahieren? Ich habe versucht Scrapy, aber Scrapy ist schwer mit meinem anderen Scraping-Code fertig, den ich gerade benutze.

    
trigger 07.04.2012, 06:56
quelle

2 Antworten

9

Es gibt auch dryscape (eine von mir geschriebene Bibliothek, also ist die Empfehlung etwas voreingenommen, offensichtlich :), die ein schnelles verwendet Webkit-basierter In-Memory-Browser zum Navigieren. Es versteht Javascript auch, aber ist viel leichter als Selenium.

    
Niklas B. 07.04.2012 10:20
quelle
1

Wenn Sie den Seiteninhalt scannen müssen, der mit AJAX aktualisiert wird und Sie nicht die Kontrolle über diese AJAX-Schnittstelle haben, würde ich den Selenium-Browser-Automator für die Aufgabe verwenden:

Ссылка

  • Selen hat Python-Bindungen

  • Es startet eine echte Browser-Instanz, so dass es 100% dasselbe tun und schaben kann, wie Sie es mit eigenen Augen sehen

  • Erhalte HTML-Dokumenteninhalt, nachdem AJAX-Updates durch Selenium API

  • aktualisiert wurden
  • Verwenden Sie lxml + xpath / CSS-Selektoren, um die relevanten Teile aus dem Dokument herauszuspalten

Mikko Ohtamaa 07.04.2012 10:16
quelle