2016-08-17 2 views
0

私はScrapyを使用してウェブサイトをクロールしています。クロールする150ページがあるとします。サイトには、1ページが次のページのURLをクロールするページングがあります。 さて、次のログを使って自己で私のクモの停止は、:Scrapy Depth Limit自体を変更する

{'downloader/request_bytes': 38096, 
'downloader/request_count': 55, 
'downloader/request_method_count/GET': 55, 
'downloader/response_bytes': 5014634, 
'downloader/response_count': 55, 
'downloader/response_status_count/200': 55, 
'finish_reason': 'finished', 
'finish_time': datetime.datetime(2016, 8, 17, 19, 12, 11, 607000), 
'item_scraped_count': 2, 
'log_count/DEBUG': 58, 
'log_count/INFO': 9, 
'log_count/WARNING': 1, 
'request_depth_max': 36, 
'response_received_count': 55, 
'scheduler/dequeued': 55, 
'scheduler/dequeued/memory': 55, 
'scheduler/enqueued': 55, 
'scheduler/enqueued/memory': 55, 
'start_time': datetime.datetime(2016, 8, 17, 19, 9, 13, 893000)} 

request_depth_max時々51になり、今ではしかし、私の設定で私はまた、設定を試してみましたDEPTH_LIMIT = 1000000000

としてそれを持っている36 DEPTH_LIMITを0に設定しても、スパイダー自体は停止しますが、設定がありません。

答えて

1

stat request_depth_maxは設定ではなく、この実行でスパイダーが到達した最高の奥行きを意味します。

また、DEPTH_LIMIT defaults to 0は無限大です。

+0

これが設定ではなく、DEPTH_LIMITを100000としている場合、スパイダーがすべてのページをカバーしていない理由、つまり特定の深度の後に停止する理由を示します。 – sagar

+0

@sagar深みとは関係ありませんが、コードはおそらくありません。より多くのヘルプのためにあなたのコードを提供しなければならないでしょう、おそらく新しい問題を開いてください。 – Granitosaurus

+0

私はこの問題を発見しました。実際には、いくつかのリクエストをした後にサイトがレスポンスを送信していないので(httpステータスコード200で)、ヒットした後に次のページのリンクを見つけることができませんでした。ありがとう、とにかく – sagar

関連する問題