How can I unwrap a module with SocksiPy?
我使用SocksiPy模块通过SOCKS代理来代理urllib2请求:
1 2 3 4 5 6 7 8 9 10 11 | 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.. |
也许我的问题很简单:如何从
因此,以下urllib2请求是从本地主机发出的(没有代理支持)
可能没有设置调用没有参数的
我试图再次导入urllib2 lib,但是什么也没发生。.
我称它为:
1 | setdefaultproxy() |
但这是正确的方法吗?
在这里将我的Socksipy分支与urllib2帮助器库一起使用:https://github.com/Anorov/PySocks
适合您的情况的示例代码:
1 2 3 4 | 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,它不会通过代理连接。