2017-10-05 5 views
0

Eigentlich möchte ich alle Daten (Text, hrefs, Bilder) in Bezug auf bestimmte Website zu einem einzigen Ordner speichern. Dazu muss ich den Pfad für diesen Ordner übergeben zu allen anderen Parsing function.So ich möchte diesen Weg als zusätzliche kwargs in scrapy.Request() wie dies passieren:Übergeben von zusätzlichen Argumenten an scrapy.Request()

yield scrapy.Request(url=url,dont_filter=True, callback=self.parse,errback = self.errback_function,kwargs={'path': '/path/to_folder'})

Aber es gibt den Fehler TypeError: __init__() got an unexpected keyword argument 'kwargs'

wie kann ich diesen Weg zur nächsten Funktion übergeben?

+3

Sie können 'meta' Argument für das Bestehen Extra Argumente. https://doc.scrapy.org/en/latest/topics/request-response.html#request-objects – AndMar

+0

Ja, ich dachte auch an dieses Ding. Aber bist du sicher, dass das der richtige Weg ist? – amrit

+1

Ja, da bin ich mir sicher. Es ist nur ein richtiger Weg – AndMar

Antwort

2

für alle, die es brauchen kann ......

Sie zusätzliche Argumente unter Verwendung von Meta-Argumente wie dies passieren kann ...

yield scrapy.Request(url=url,dont_filter=True, callback=self.parse,errback = self.errback_function, meta={'filepath': filepath}) 
Verwandte Themen