【发布时间】:2013-12-14 10:07:48
【问题描述】:
我正在使用第三方服务填充本地数据库。我有一个网址列表(大约 500 个)。我在循环中调用每个 url,并使用返回的数据更新我的数据库。代码流程如下:
for url in urllist:
req = urllib.urlopen(url)
data = json.loads(req.read())
req.close()
#update the db using data here
每当我运行这段代码时,脚本都会随机失败,并显示错误消息“名称或服务未知”。这与 url 没有任何关系,因为脚本在随机点失败(即在一次运行中第 50 次迭代,在另一次运行中第 60 次迭代)
这可能是什么原因?
【问题讨论】:
-
我想我会将这些调用中的每一个都放入它们自己的线程中。我想,如果您遇到可变错误,那是由于您的网络在不同时间出现拥塞。
-
检查您的代理或防火墙
-
这些请求同步工作,我在开始下一个请求之前关闭每个请求。这仍然与网络拥塞有关吗?
标签: python django networking urllib