¿Cómo puedo usar un proxy SOCKS 4/5 con urllib2 para descargar una página web?¿Cómo puedo usar un proxy SOCKS 4/5 con urllib2?
Respuesta
Dado que SOCKS es un proxy de nivel de socket, debe reemplazar el objeto de socket utilizado por urllib2
. Consulte la solución this. Si el parche de mono no es lo suficientemente bueno para usted, puede intentar crear una subclase o copiar o modificar el código de la biblioteca estándar urllib2
.
Agregando una alternativa a la respuesta de pan cuando necesite usar muchos proxies diferentes al mismo tiempo.
En ese caso, necesita crear un abridor como lo hace con un proxy HTTP. Hay un código disponible en GitHub https://gist.github.com/869791
opener = urllib2.build_opener(SocksiPyHandler(socks.PROXY_TYPE_SOCKS4, 'localhost', 9999))
print opener.open('http://www.whatismyip.com/automation/n09230945.asp').read()
Oye, estaba usando el código de github. Lamentablemente, la autenticación no funciona. He pasado el nombre de usuario y la contraseña correctos en socksipyhandler.py; sin embargo, aparece el error (3, "nombre de usuario desconocido o contraseña no válida"). Puedo confirmar que mi contraseña de nombre de usuario funciona, ya que mi comando cURL funciona con las mismas credenciales. –
No importa, descubrió el problema, había un error tipográfico en socks.py =), por cierto, buen trabajo. ¡Gracias una tonelada! –
- 1. Socks Proxy para HttpWebRequest
- 2. Usando un proxy SOCKS de C++
- 3. Proxy con urllib2
- 4. ¿Cómo hacer una solicitud HTTP a través de un (tor) socks proxy usando python?
- 5. Ambos usando cookies y un proxy en Python con urllib2
- 6. CFStream falla después de configurar SOCKS proxy config
- 7. Python urllib2 HTTPS y proxy autenticación NTLM
- 8. Cómo autenticar Socks 5 Proxies dentro de archivos PAC (Proxy Auto Config)
- 9. ¿Cómo configuro Go para usar un proxy?
- 10. PyQt: cómo usar QWebPage con un proxy anónimo
- 11. ¿Cómo puedo forzar la finalización de urllib2?
- 12. Cómo usar un proxy HTTP en java
- 13. Cómo usar git detrás de un proxy
- 14. urllib2 con cookies
- 15. Python urllib2> Proxy HTTP> HTTPS petición
- 16. C# Formato de hora. Localización en francés ¿cómo obtengo la salida "5h 45" para 5:45?
- 17. ¿Cómo puedo detectar automáticamente un proxy?
- 18. ¿Cómo puedo crear un envoltorio/proxy XMLHttpRequest?
- 19. Cómo usar un archivo WSDL para crear un Proxy WCF?
- 20. Cómo usar el proxy con la aplicación C#
- 21. Python urllib2 con keep alive
- 22. ¿Puedo usar http tunnel para hacer ping o traceroute a través de un proxy con firewall?
- 23. Disminución con urllib2
- 24. ¿Cómo puedo usar un raw_input con twisted?
- 25. ¿Cómo puedo convertir un proxy dinámico en un POCO?
- 26. Cómo usar los fantasmas junto con el nodo-http-proxy?
- 27. Dile urllib2 de usar DNS personalizado
- 28. Uso de certificados de cliente con urllib2
- 29. ¿Cómo autenticarse en un proxy al usar la clase HttpClient?
- 30. ¿Cómo usar PEAR detrás del proxy?
relacionado para Tor: http://stackoverflow.com/questions/1096379/how-to-make-urllib2-requests-through-tor-in-python –