我想使用scrapy抓取大约400万页。我正在使用storm proxies。 让我们说我的帐户允许的线程数是20。 我想问 -
多线程在scrapy中意味着CONCURRENT_REQUESTS_PER_DOMAIN。
或者还有其他任何方法可以做到这一点。
如何有效地使用这20个线程
注意 - 如果我不清楚我的问题,请发表评论,我会尽力详细说明。
答案 0 :(得分:1)
直接退出文档:
CONCURRENT_REQUESTS
- 最大并发数(即。 同时)请求将由Scrapy执行 下载器。
CONCURRENT_REQUESTS_PER_DOMAIN
- 最大并发数 (即同时)将对任何单个执行的请求 域。
CONCURRENT_REQUESTS_PER_IP
- 最大并发数(即。 同时)将对任何单个IP执行的请求。如果 非零,CONCURRENT_REQUESTS_PER_DOMAIN设置被忽略,并且 这个用来代替。换句话说,并发限制将是 每个IP应用,而不是每个域。
直接回答您的问题
我怀疑该服务只允许你整个搜索20个线程,这意味着它不关心你的请求,所以你应该使用CONCURRENT_REQUESTS
设置为20最大值(默认值为16)。
每个请求都是“一种线程”。它建立在Twisted之上。在你正在使用的代理服务的眼中,没有办法分辨出来,所以每个请求都是代理线程!