Wie greife ich in einem Scrapy CrawlSpider auf eine bestimmte start_url zu?
Ich benutze Scrapy, insbesondere Scrapy'sCrawlSpider
Klasse zum Scrappen von Weblinks, die bestimmte Schlüsselwörter enthalten. Ich habe eine ziemlich langestart_urls
Liste, deren Einträge aus einer SQLite-Datenbank stammen, die mit einem Django-Projekt verbunden ist. Ich möchte die verkratzten Weblinks in dieser Datenbank speichern.
Ich habe zwei Django-Modelle, eines für die Start-URLs wiehttp://example.com
und eine für die gekratzten Weblinks wiehttp://example.com/website1
, http://example.com/website2
usw. Alle überarbeiteten Weblinks sind Unterwebsites einer der Start-URLs in derstart_urls
Liste.
Das Web-Link-Modell hat eine 1: 1-Beziehung zum Start-URL-Modell, d. H. Das Web-Link-Modell hat einen Fremdschlüssel zum Start-URL-Modell. Um meine verschlüsselten Weblinks richtig in der Datenbank zu speichern, muss ich das mitteilenCrawlSpider
'sparse_item()
Methode, zu welcher Start-URL der gescrappte Weblink gehört. Wie kann ich das machen? Scrapy'sDjangoItem
Klasse hilft in dieser Hinsicht nicht, da ich die verwendete Start-URL noch explizit definieren muss.
Mit anderen Worten, wie kann ich die aktuell verwendete Start-URL an die weiterleiten?parse_item()
Methode, damit ich es zusammen mit den entsprechenden verkratzten Weblinks in der Datenbank speichern kann? Irgendwelche Ideen? Danke im Voraus!