我使用SocksiPy模块通过SOCKS代理代理urllib2请求:
import socks
# Set the proxy information
socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS5, 'x.x.x.x', 9050)
# Route an HTTP request through the SOCKS proxy
socks.wrapmodule(urllib2)
print urllib2.urlopen('http://www.google.com').read()
# other urllib2 requests to follow here..也许我的问题非常简单:我如何从 one中解包-- urllib2模块,因此,当以下urllib2请求从本地主机(没有代理支持)发出,或者没有set调用setdefaultproxy时,没有参数?
我试图再次导入urllib2库,但什么也没有发生。
我看到它在我叫它之后工作得很好:
setdefaultproxy()但这是正确的方式吗?
发布于 2013-03-07 08:12:51
在这里使用我的Socksipy分支和urllib2助手库:https://github.com/Anorov/PySocks
示例代码,用于您的情况:
import socks, urllib2
from sockshandler import SocksiPyHandler
proxy_opener = urllib2.build_opener(SocksiPyHandler(socks.PROXY_TYPE_SOCKS5, "IP", 9050))
print proxy_opener.open("http://whatismyip.org/").read()您可以设置不同的打开程序来使用不同的代理,或者在您的示例中,只需使用默认的urllib2处理程序或urllib2.urlopen,它就不会通过代理连接。
https://stackoverflow.com/questions/15160922
复制相似问题