cliente web usando proxy con autentificacion
Carlos Galisteo
cgalisteo en k-rolus.net
Vie Mayo 12 14:56:47 CEST 2006
Hola Jordi.
Yo tuve el mismo problema, y se soluciono exportando la variable de sistema http_proxy con los datos apropiados (export http_proxy=http://user:password@proxy:puerto). Asi puededs utilizar urllib2 como si no hubiera proxy.
Esto funiona en ambientes Unix, para otros no se si podra hacer algo parecido.
On Fri, 12 May 2006 14:41:15 +0200, Jordi Funollet <jordi.f en ati.es> wrote:
> Buenas,
>
> Estoy intentando acceder a webs a través de un proxy que requiere
> autentificación. Con un cliente Firefox funciona sin problemas, pero al
> intentar crear un cliente en Python se niega a reconocerme.
>
>
> #################################################################
> import urllib2
> from sys import exit
>
>
> proxy_vars = {'host': 'mi.proxy.net',
> 'port': '3128',
> 'user': 'miusuario',
> 'password': 'miclave',
> }
> url_test='http://www.google.com'
>
>
> def use_proxy (url_test, proxy_vars):
>
> password_mgr = urllib2.HTTPPasswordMgrWithDefaultRealm()
> password_mgr.add_password (None, proxy_vars['host'],
> proxy_vars['user'],
> proxy_vars['password'])
> auth_handler = urllib2.ProxyBasicAuthHandler(password_mgr)
>
> proxy_url = 'http://%(host)s:%(port)s/' % proxy_vars
> proxy_handler = urllib2.ProxyHandler( {'http': proxy_url} )
>
> opener = urllib2.build_opener(proxy_handler, auth_handler)
> urllib2.install_opener(opener)
>
> try:
> page = urllib2.urlopen(url_test)
> print f.info()
> except urllib2.HTTPError, msg_err:
> print "#### HTTPError.info()"
> print msg_err.info()
> print "#### HTTPError.geturl()"
> print msg_err.geturl()
>
>
> if __name__ == '__main__':
> use_proxy(url_test, proxy_vars)
> #################################################################
>
>
>
>
> Y esto es lo único que me devuelve, el muy desagradecido. ;-)
>
> #################################################################
> #### HTTPError.info()
> Server: squid/2.5.STABLE9
> Mime-Version: 1.0
> Date: Fri, 12 May 2006 12:29:33 GMT
> Content-Type: text/html
> Content-Length: 1314
> Expires: Fri, 12 May 2006 12:29:33 GMT
> X-Squid-Error: ERR_CACHE_ACCESS_DENIED 0
> Proxy-Authenticate: Basic realm="mi.proxy.net proxy "
> X-Cache: MISS from mi.proxy.net
> X-Cache-Lookup: NONE from mi.proxy.net:3128
> Proxy-Connection: close
>
> #### HTTPError.geturl()
> http://www.google.com
> #################################################################
>
>
>
> --
> ##############################
> ### Jordi Funollet
> ### http://www.terraquis.net
>
>
--
---
Carlos Galisteo
Jabber_Id::cgalisteo en jabber.org
PGP_key::http://k-rolus.net/~cgalisteo/cgalisteo.gpg
Key_Fingerprint::F888 6FBA 9145 B5A2 C187 66D6 5B8C 027A 69AD BE65
---
------------ próxima parte ------------
_______________________________________________
Python-es mailing list
Python-es en aditel.org
http://listas.aditel.org/listinfo/python-es
Más información sobre la lista de distribución Python-es