Tan pronto como Python requestsse combine con la SOCKS5solicitud de extracción, será tan simple como usar el proxiesdiccionario:
proxies = {
'http' : "socks5://myproxy:9191",
'https' : "socks5://myproxy:9191"
}
headers = {
}
url='http://icanhazip.com/'
res = requests.get(url, headers=headers, proxies=proxies)
Ver soporte de proxy SOCKS
Otra opción, en caso de que no pueda esperar requesta estar listo, cuando no pueda usar requesocks, como en GoogleAppEngine debido a la falta de pwdun módulo incorporado, es usar PySocks que se mencionó anteriormente:
- Tome el
socks.pyarchivo del repositorio y coloque una copia en su carpeta raíz;
- Agregar
import socksyimport socket
En este punto, configure y vincule el socket antes de usar con urllib2- en el siguiente ejemplo:
import urllib2
import socket
import socks
socks.set_default_proxy(socks.SOCKS5, "myprivateproxy.net",port=9050)
socket.socket = socks.socksocket
res=urllib2.urlopen(url).read()