Nach dem Hyperlink und "Gefilterte Offsite-Anfrage"

8

Ich weiß, dass es da draußen mehrere zusammenhängende Threads gibt, und sie haben mir sehr geholfen, aber ich komme immer noch nicht ganz durch. Ich bin an dem Punkt, wo die Ausführung des Codes nicht zu Fehlern führt, aber ich bekomme nichts in meiner csv -Datei. Ich habe die folgende Scrapy Spinne, die auf einer Webseite beginnt, dann folgt einem Hyperlink und kratzt die verknüpfte Seite:

%Vor%

Ich versuche, die Ergebnisse in eine CSV-Datei zu exportieren, aber ich bekomme nichts die Datei. Das Ausführen des Codes führt jedoch nicht zu Fehlern. Ich weiß, dass es ein einfaches Beispiel mit nur einer URL ist, aber es veranschaulicht mein Problem.

Ich denke, mein Problem könnte sein, dass ich Scrapy nicht sage, dass ich die Daten in der Parse2 -Methode speichern möchte.

Übrigens, ich betreibe die Spinne als scrapy crawl spiderBBR -o scraped_data.csv -t csv

    
Mace 25.07.2013, 15:33
quelle

2 Antworten

22

Sie müssen Ihre ausgegebene Request in parse ändern, um parse2 als Callback zu verwenden.

EDIT: allowed_domains sollte nicht das HTTP-Präfix enthalten, zB:

%Vor%

Probieren Sie das aus und sehen Sie, ob Ihre Spinne immer noch korrekt läuft, anstatt allowed_domains blank zu lassen

    
Talvalin 25.07.2013, 18:04
quelle
1

versuche, diese dont_filter=true

zu machen

yield Request(url=url2, meta{'address':hxs.select("id('searchresult')/tr/td[1]/a[@href]/text()").extract()}, callback=self.parse2,dont_filter=True)

    
Balaji D 14.01.2016 10:34
quelle