我想通过Web API获取整个Old Bailey Online归档的子集。Python3,Urllib3:快速服务器友好的请求,以100,000个请求的顺序到单个站点?
我的问题是我的实现不仅速度慢,而且服务器也立即停止服务我的请求(大约10分钟)。
目前我使用urllib3的开发版本:
import urllib3
retry = urllib3.util.Retry(total=1000, read=200, connect=200, backoff_factor=0.5)
timeout = urllib3.util.Timeout(connect=2.0, read=4.0)
http=urllib3.PoolManager(retry=retry, timeout=timeout, maxsize=10)
然后我跑我的这个HTTP池中的所有请求。我选择的数字相当荒谬,但最好的还是8(
对于每一年,我需要提出70个并发请求,超过243年,并为不同的情况。 我尝试使用@shazow workerpool(修改为工作python3.4根据https://stackoverflow.com/a/24046895/398969),同时在一年内,多线程年,这也没有工作太好,主要是由于服务器超时和我的无知
是否有明显的延迟引入的DNS查找?我不能使用IP作为域是一个Apache虚拟主机(或可以吗?)
Soo。真正的问题:我如何下载数十万次相同的服务器'很好',及时?我仍然期待它需要一天左右的时间8)
没有robots.txt,也没有在父网站上。将有更好的去获得python3.4的工作主要是urllib - > urllib.parse的东西。应该很容易...只有轻微的成功改变周围的数字。 – SpmP 2014-10-30 10:28:49