在 Python 3.1 下,尝试运行此代码时:
from urllib import request
def test():
request.urlopen("http://www.google.com")
test()
我收到 HTTP 409 错误。堆栈跟踪是:
Traceback (most recent call last):
File "C:\Users\Beau\Python\pokescrape.py", line 6, in <module>
test()
File "C:\Users\Beau\Python\pokescrape.py", line 4, in test
request.urlopen("http://www.google.com")
File "C:\Program Files\Python\lib\urllib\request.py", line 119, in urlopen
return _opener.open(url, data, timeout)
File "C:\Program Files\Python\lib\urllib\request.py", line 353, in open
response = meth(req, response)
File "C:\Program Files\Python\lib\urllib\request.py", line 465, in http_response
'http', request, response, code, msg, hdrs)
File "C:\Program Files\Python\lib\urllib\request.py", line 385, in error
result = self._call_chain(*args)
File "C:\Program Files\Python\lib\urllib\request.py", line 325, in _call_chain
result = func(*args)
File "C:\Program Files\Python\lib\urllib\request.py", line 560, in http_error_302
return self.parent.open(new, timeout=req.timeout)
File "C:\Program Files\Python\lib\urllib\request.py", line 353, in open
response = meth(req, response)
File "C:\Program Files\Python\lib\urllib\request.py", line 465, in http_response
'http', request, response, code, msg, hdrs)
File "C:\Program Files\Python\lib\urllib\request.py", line 391, in error
return self._call_chain(*args)
File "C:\Program Files\Python\lib\urllib\request.py", line 325, in _call_chain
result = func(*args)
File "C:\Program Files\Python\lib\urllib\request.py", line 473, in http_error_default
raise HTTPError(req.full_url, code, msg, hdrs, fp)
打印出来的实际错误是:
urllib.error.HTTPError: HTTP Error 409: Conflict
我通过配置脚本设置了代理;我没有遇到过有关互联网连接的问题。
到底为什么我会收到 HTTP 409 错误?
最佳答案
我也遇到了这个问题(也来自兰开斯特,碰巧),发现如果我设置环境变量 http_proxy,Python 就会使用它。在本例中(在 Windows 上)它将是:
set http_proxy=http://wwwcache.lancs.ac.uk:8080
在 *nix 上:
export http_proxy=http://wwwcache.lancs.ac.uk:8080/
编辑:感谢 Beau Martínez 修复了 *nix。
关于python - 使用 urllib.request.urlopen() 时为 "HTTP Error 409: Conflict",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2247418/