The problem is that you are importing urllib2 before making a connection to the socks.
Try this instead:
import socks import socket socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS4, '127.0.0.1', 9050, True) socket.socket = socks.socksocket import urllib2 print urllib2.urlopen("http://almien.co.uk/m/tools/net/ip/").read()
Manual request example:
import socks
import urlparse
SOCKS_HOST = 'localhost'
SOCKS_PORT = 9050
SOCKS_TYPE = socks.PROXY_TYPE_SOCKS5
url = 'http://www.whatismyip.com/automation/n09230945.asp'
parsed = urlparse.urlparse (url)
socket = socks.socksocket ()
socket.setproxy (SOCKS_TYPE, SOCKS_HOST, SOCKS_PORT)
socket.connect ((parsed.netloc, 80))
socket.send ('' 'GET% (uri) s HTTP / 1.1
host:% (host) s
connection: close
'' '% dict (
uri = parsed.path,
host = parsed.netloc,
)))
print socket.recv (1024)
socket.close ()
Wolph Feb 28 2018-11-28T00: 00Z
source share