Другим способом является создание обезьянки для библиотеки носков следующим образом:
import socks, socket, urllib2
def create_connection(address, timeout=None, source_address=None):
sock = socks.socksocket()
sock.connect(address)
return sock
socks.setdefaultproxy(None, None) # this does ["0.0.0.0"], [0]
socket.socket = socks.socksocket
socket.create_connection = create_connection
print urllib2.urlopen("http://httpbin.org/ip").read()
Итак, кажется, что если вы установите его как 0.0.0.0
для порта 0
по крайней мере, следует избегать его использования, поскольку библиотека inet_aton()
не примет 0.0.0.0
в качестве действительного IP-адреса.
Очевидно, я на самом деле не проверял, почему что ... но, действительно, работает.
Самый простой способ проверить это - сначала установить прокси-сервер, получить URL-адрес любой библиотеки и повторить попытку, не устанавливая прокси-сервер. Вы будете пойманы последним установленным прокси :), если вы не "сбросили" его для следующих соединений.