2012-03-22 11 views
0

urllib2の場合はプロキシハンドラを使用し、urllibにプロキシを設定してもurllibまたはurllib2を使用してread()を開くことができません。プロキシを設定してもurllibまたはurllib2を使用してネットワークに接続できません

HTTPプロキシ::someproxy.comポート:1080

私が試してみましたurllibは:インターネットに接続するためにプロキシを使用しています マイネットワークがプロキシである(私のブラウザから取られた)き

import urllib 
myproxies = {'http':'http://someproxy.com:1080'} 
data = urllib.urlopen('http://www.google.com', proxies = myproxies).read() 

が、私は、このエラーが発生します:

Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "C:\Python27\lib\urllib.py", line 84, in urlopen 
    return opener.open(url) 
    File "C:\Python27\lib\urllib.py", line 200, in open 
    return self.open_unknown_proxy(proxy, fullurl, data) 
    File "C:\Python27\lib\urllib.py", line 219, in open_unknown_proxy 
    raise IOError, ('url error', 'invalid proxy for %s' % type, proxy) 
IOError: [Errno socket error] [Errno 11001] getaddrinfo failed' 

とurllib2のため:

import urllib2 
proxy = urllib2.ProxyHandler({'http':'http://someproxy.com:1080'}) 
opener1 = urllib2.build_opener(proxy) 
urllib2.install_opener(opener1) 
urllib2.urlopen('http://www.google.com')' 

私はこのエラーを取得しています:

Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "C:\Python27\lib\urllib2.py", line 126, in urlopen 
    return _opener.open(url, data, timeout) 
    File "C:\Python27\lib\urllib2.py", line 394, in open 
    response = self._open(req, data) 
    File "C:\Python27\lib\urllib2.py", line 412, in _open 
    '_open', req) 
    File "C:\Python27\lib\urllib2.py", line 372, in _call_chain 
    result = func(*args) 
    File "C:\Python27\lib\urllib2.py", line 1199, in http_open 
    return self.do_open(httplib.HTTPConnection, req) 
    File "C:\Python27\lib\urllib2.py", line 1174, in do_open 
    raise URLError(err) 
urllib2.URLError: <urlopen error [Errno 11001] getaddrinfo failed> 

任意のヘルプは大歓迎されます。

MRick

+0

プロキシで認証が​​必要ですか?その場合は、これらの資格情報も入力する必要があります。 –

答えて

2

私はあなたがurlliburllib2ため

... 
proxies = {'http':'http://someproxy.com:1080/'} 
data = urllib.urlopen('http://www.google.com', proxies=proxies).read() 
... 

またはこのために次のことをしたいと思う:

... 
proxy = urllib2.ProxyHandler({'http':'http://someproxy.com:1080'}) 
... 

注プロキシURLは、あなたのコードは省略プロトコル部分を含んでいます。

+0

こんにちは、お返事はありがとう、実際に編集時に私はそれらのものを見逃しました、私の悪い、私は質問を編集しました。結果は同じでしたが。 – MCan

関連する問題