URLError: <urlopen 错误 [Errno 104] 对等方重置连接>
每当我通过FQL向Facebook服务器请求用户数据时,有10%的几率会出现以下错误:
URLError: <urlopen error [Errno 104] Connection reset by peer>
我无法重现这个错误。下面是错误的详细信息:
File "/home/fb.py", line 250, in get_data()
return json.load(urlopen(URL, params))
File "/usr/lib/python2.6/urllib2.py", line 126, in urlopen
return _opener.open(url, data, timeout)
File "/usr/lib/python2.6/urllib2.py", line 391, in open
response = self._open(req, data)
File "/usr/lib/python2.6/urllib2.py", line 409, in _open
'_open', req)
File "/usr/lib/python2.6/urllib2.py", line 369, in _call_chain
result = func(*args)
File "/usr/lib/python2.6/urllib2.py", line 1169, in https_open
return self.do_open(httplib.HTTPSConnection, req)
File "/usr/lib/python2.6/urllib2.py", line 1136, in do_open
raise URLError(err)
URLError: <urlopen error [Errno 104] Connection reset by peer>
任何帮助都非常感谢
2 个回答
1
试试把 cache=None
作为客户端参数。这对我解决同样的问题有帮助。
client = suds.client.Client(url, cache=None)
2
这个错误通常是因为防火墙或代理系统设置得不好导致的。如果你是在家里的ADSL网络上运行你的程序,或者用简单的网络连接,代码本身应该是没问题的。104这个错误代码是当你本地网络里的某个东西出问题了,像小孩发脾气一样不干了,给你反馈的。