でサイトのリストをクロールしようとしていますscrapy
。ウェブサイトの URL のリストを として入れようとしましたstart_urls
が、それではあまり多くのメモリを確保できないことがわかりました。scrapy
一度に 1 つまたは 2 つのサイトのクロールを設定する方法はありますか?
3723 次
2 に答える
3
concurrent_requests = 1
データで過負荷にならないように試してみることができます
http://doc.scrapy.org/en/latest/topics/settings.html#concurrent-requests
于 2013-01-14T08:37:13.447 に答える
0
URL へのリクエストを繰り返すstart_requestsメソッドを定義できます。これにより、すべての開始 URL を一度にメモリに保持するオーバーヘッドが回避され、説明した問題を解決する最も簡単な方法です。
クロール中に Scrapy がメモリに保持する URL がまだたくさんある場合は、永続化サポートを有効にすることができます。
一度にいくつかの URL のみをスクレイピーにフィードしたい場合は、spider_idleシグナルに登録し、コールバック関数で次のいくつかの URL を追加して DontCloseSpider を発生させることで可能です。
于 2013-01-13T18:56:39.520 に答える