非常に基本的な方法でサイトをクロールしようとしています。しかし、Scrapyはすべてのリンクをクロールしていません。 follows-すべてのページをクロールしないでください。
がmain_page.htmlように私はシナリオを説明します - >、b_page.htmlをa_page.htmlへのリンクが含まれているc_page.html、
a_page.html - > a1_page.htmlへのリンクが含まれ、a2_page.html
b_page.html - >がb1_page.htmlへのリンクが含まれ、
c_page.html b2_page.html - > c1_page.htmlへのリンクが含まれ、c2_page.html
a1_page.html - >は
a2_page.htmlをb_page.htmlするためのリンクが含まれています - > c_page.htmlへのリンクが含まれています
b1_page.html - > a_page.htmlへのリンクが含まれています
b2_page.html - > c_page.htmlへのリンクが含まれています c1_page.html - >私はCrawlSpiderに以下のルールを使用しています
をmain_page.htmlするためのリンクが含まれています - - >
c2_page.htmlをa_page.htmlするためのリンクが含まれてい
Rule(SgmlLinkExtractor(allow =()), callback = 'parse_item', follow = True))
しかし、次のようにクロールの結果である -
DEBUG:クロール(200)のhttp://localhost/main_page.html>(リファラー: なし)2011-12-05 09:56:05 + 07 [test_spider] DEBUG:クロール済み(200)http://localhost/a_page.html>(referer: http://localhost/main_page.html)2011-12-05 09:56:07 + 0530 [test_spider] DEBUG:クロール済み//localhost/a1_page.html> (referer:http://localhost/a_page.html)2011-12-05 09:56:07 + 0530 [test_spider] DEBUG:クロール済み(200)http://localhost/b_page.html> (referer: http://localhost/a1_page.html)2011-12-05 09:56:07 + 0530 [test_spider]デバッグ:クロール済み(200)http://localhost/b1_page.html> (referer:http://localhost/b_page.html)2011-12-05 09:56:07 +0530 [test_spider]情報:閉鎖スパイダー(終了)
すべてのページをクロールしていません。
NB - Scrapy Docに記載されているように、私はBFOでクロールを行いました。
私には何が欠けていますか?
ありがとうございました。私はダウンロードの遅延を追加しようとしています。しかし、私が例として取ったサイトは、localhost上で実行され、単なる単純なリンクで構成されています。 – Siddharth
いいえ、その仕事はありませんでした。 scrapyが印刷する統計では、私はこのようなものを得ています。 'request_depth_max':5、 – Siddharth
あなたはDepthMiddlewareを使用している場合があります http://readthedocs.org/docs/scrapy/en/latest/topics/spider-middleware.html 実際DepthMiddlewareセクション – CodeMonkeyB