Folgende Links, Scrapy Web Crawler Framework

8

Nach mehreren Lesungen in Scrapy-Dokumenten merke ich immer noch nicht den Unterschied zwischen der Verwendung von CrawlSpider-Regeln und der Implementierung eines eigenen Link-Extraktionsmechanismus für die Callback-Methode.

Ich bin dabei, einen neuen Web-Crawler zu schreiben, der den letzteren Ansatz verwendet, aber nur, weil ich in einem vergangenen Projekt schlechte Erfahrungen mit Regeln gemacht habe. Ich würde wirklich gerne genau wissen, was ich mache und warum.

Wer ist mit diesem Tool vertraut?

Danke für Ihre Hilfe!

    
romeroqj 06.07.2011, 03:27
quelle

2 Antworten

10

CrawlSpider erbt BaseSpider. Es wurden nur Regeln hinzugefügt, um Links zu extrahieren und zu folgen. Wenn diese Regeln nicht flexibel genug für Sie sind, verwenden Sie BaseSpider:

%Vor%

Auch wenn BaseSpiders start_urls nicht flexibel genug für Sie sind, überschreiben Sie start_requests Methode.

    
warvariuc 06.07.2011, 07:51
quelle
1

Wenn Sie selektiv crawlen möchten, zB "Next" -Links für die Paginierung usw., ist es besser, einen eigenen Crawler zu schreiben. Für das allgemeine Crawling sollten Sie crawlspider verwenden und die Links herausfiltern, denen Sie nicht folgen müssen, indem Sie Rules & amp; process_links Funktion.

Sieh dir den Crawlspider-Code in \scrapy\contrib\spiders\crawl.py an, es ist nicht zu kompliziert.

    
Medorator 06.07.2011 04:20
quelle

Tags und Links