精细这项工作:的Python的urllib2> HTTP代理> HTTPS请求
import urllib2
opener = urllib2.build_opener(
urllib2.HTTPHandler(),
urllib2.HTTPSHandler(),
urllib2.ProxyHandler({'http': 'http://user:[email protected]:3128'}))
urllib2.install_opener(opener)
print urllib2.urlopen('http://www.google.com').read()
但是,如果HTTP变化HTTPS:
...
print urllib2.urlopen('https://www.google.com').read()
有错误:
Traceback (most recent call last):
File "D:\Temp\6\tmp.py", line 13, in <module>
print urllib2.urlopen('https://www.google.com').read()
File "C:\Python26\lib\urllib2.py", line 124, in urlopen
return _opener.open(url, data, timeout)
File "C:\Python26\lib\urllib2.py", line 389, in open
response = self._open(req, data)
File "C:\Python26\lib\urllib2.py", line 407, in _open
'_open', req)
File "C:\Python26\lib\urllib2.py", line 367, in _call_chain
result = func(*args)
File "C:\Python26\lib\urllib2.py", line 1154, in https_open
return self.do_open(httplib.HTTPSConnection, req)
File "C:\Python26\lib\urllib2.py", line 1121, in do_open
raise URLError(err)
URLError: <urlopen error [Errno 10060]
为什么,以及如何解决这个问题?
如果你正在阅读本:请将正确答案标为正确。这是为了确保没有人浪费时间试图回答已经回答的问题。这也是一种很好的方式来表示感谢为您的问题提出了解决方案的人 – Sheena 2013-02-11 07:08:41