2017-06-25 6 views
1

Es sieht so aus, als ob scrapy pipeline darauf wartet, dass der Crawl beendet wird, bevor er in die Datei schreibt. Die Persistenzoption (die JOBDIR verwendet) scheint beim Crawlen nicht in die Ausgabedatei zu schreiben.Scrapy - Schreiben auf die Festplatte während des Crawls

Was sind meine Optionen, wenn ich will:

  • a) Speichern jedes Element, wie es scheint

  • b) Speichern alle 10 Artikel gesammelt

Antwort

1

Wenn Sie Probleme mit der Protokollierung mit scrapy können Sie Ihren Protokollierungsgrad anpassen, indem Sie der Datei settings.py in Ihrem Scrapy-Projekt eine Zeile hinzufügen:

LOG_LEVEL = 'ERROR' 

Wenn Sie die Ausgabe in separate Datei drucken möchten, können Sie tun, dass auf diese Weise von der Kommandozeile

scrapy crawl yourobject -s LOG_FILE= mynew.log 

Dies ist, wie ich auf Ubuntu arbeiten.

+0

Entschuldigung, mit Ausgabe meine ich die gecrawlten Elemente zum Beispiel Inhalt aus Wikipedia. Anstatt in CSV zu schreiben, während jedes Objekt gecrawlt und geparst wird, wartet mein Crawler bis zum Ende, bevor Elemente in Datei gespeichert werden. Ihr Vorschlag für die Log-Datei ist hilfreich - ich dachte nicht, um es zu Datei, aber es ist eine nette Idee. – pythOnometrist

Verwandte Themen