我正试图通过一个简单的过程从亚马逊收集一些数据:
response = urllib2.urlopen(url)
amzn_response = response.read()
json_data = json.loads(amzn_response)
我的问题是我必须在请求之间插入1到2秒的延迟,否则它最终会挂起并超时。
是的,我还尝试将用户代理设置为Python以外的其他代理。相同的结果。
如果这很重要,我正在从住宅DSL线路上的Windows Vista运行代码。我还没试过从我的一个Linode上运行它(代码没准备好)。
我可以在请求之间稍微延迟但是1秒以上的事情真的让事情陷入停顿。我也不想要求亚马逊提出要求。这当然不是意图。我怎样才能更快?
此外,不,我无法通过任何API获取我所追踪的数据。我们以这种方式获得所有数据,但有些部分是您无法通过其他任何方式获得的。
编辑1:url
可能是这样的:
http://www.amazon.com/Accoutrements-12027-Horse-Head-Mask/dp/B003G4IM4S/
编辑2:我必须插入的延迟是在我成功接收每个请求的数据之后。换句话说,我要求给定url
,获取数据,存储它然后我需要等待1到2秒才会要求新的url
或最终超时。< / p>