[Python] Problema con proxy

Pietro Battiston me a pietrobattiston.it
Sab 29 Set 2012 19:21:54 CEST


Grazie della dritta... io il realm lo conosco anche, ma dove dovrei
darglielo?!

In HTTPPasswordMgrWithDefaultRealm.add_password gliene posso dare uno,
ma da quello che ho capito
- serve solo a stabilire quali dati di autenticazione utilizzare a
seconda del realm ricevuto nell'errore 407 (e None significa "per tutti
i realm"), ed
- è il realm ricevuto che dovrebbe essere utilizzato poi per
l'autenticazione.

In sintesi, da quel che ho capito è _normale_ che nel corso
dell'autenticazione digest si riceva un 407. Non ho capito nulla?

grazie

Pietro

Il giorno sab, 29/09/2012 alle 19.08 +0200, Simone Federici ha scritto:
> dalla mia esperienza con i proxy... di solito basta un realm sbagliato
> per avere una 407
> prova a sniffare la risposta per capire che realm usare
> 
> 
> ciao
> S
> 
> 
> 2012/9/29 Pietro Battiston <me a pietrobattiston.it>
>         Il giorno sab, 29/09/2012 alle 16.32 +0200, Marco Giusti ha
>         scritto:
>         > On Sat, Sep 29, 2012 at 12:21:36PM +0200, Pietro Battiston
>         wrote:
>         > > Il giorno sab, 29/09/2012 alle 02.19 +0200, Pietro
>         Battiston ha scritto:
>         > > > Sì, ho provato, non cambia niente.
>         > > >
>         > > > L'idea che mi sono fatto è che wget sia semplicemente
>         incapace di
>         > > > parsare un proxy del genere (e d'altronde non c'è altro
>         modo per
>         > > > darglielo). Non dispero invece del tutto in urllib2,
>         semplicemente non
>         > > > capisco cosa stia succedendo.
>         >
>         > senza sapere ne' leggere ne' scrivere, le seguenti opzioni
>         non ti sono
>         > di aiuto, magari solo per semplificare l'url del proxy?
>         >
>         >        --proxy-user=UTENTE   imposta il nome utente per il
>         proxy a UTENTE.
>         >        --proxy-passwd=PASS   imposta la password per il
>         proxy a PASS.
>         >
>         
>         
>         Uh, molto carini questi parametri. In effetti non riuscendo a
>         passare
>         come argomento il proxy non avevo neanche immaginato di
>         poterne passare
>         i dati di autenticazione.
>         
>         Il fatto che anche in questo modo il proxy mi dia un errore
>         407 mi
>         lascia sempre più sconsolato.
>         
>         
>         > e magari una cosa del genere, sempre senza saper ne' leggere
>         ne'
>         > scrivere?
>         >
>         >       #! /usr/bin/python
>         >
>         >       import urllib2
>         >
>         >       proxy_url = r'http://proxybiblio2.si.unimib.it:8080/'}
>         >       proxy = urllib2.ProxyHandler({'http': proxy_url})
>         >       auth = urllib2.ProxyDigestAuthHandler()
>         >       auth.add_password(realm, proxy_url, 'username',
>         'password')
>         >       opener = urllib2.build_opener(proxy, auth,
>         urllib2.HTTPHandler)
>         >       urllib2.install_opener(opener)
>         >       conn = urllib2.urlopen('http://webofknowledge.com')
>         >       return_str = conn.read()
>         >
>         
>         
>         
>         Questo è esattamente quello che provavo, e per l'appunto dopo
>         l'errore
>         407 si arrende...
>         
>         In cambio ho scoperto qualcos'altro di interessante. A
>         differenza della
>         classe ProxyDigestAuthHandler, la ProxyBasicAuthHandler ha due
>         metodi
>         "http_error_auth_reqed" e "get_cnonce", che sembrano
>         interessanti (e
>         sono chiaramente totalmente privi di documentazione).
>         
>         Inoltre entrambe le classi hanno un metodo
>         "http_error_407(req, fp,
>         code, msg, hdrs)" la cui documentazione è proprio
>         "Retry the request with authentication information, if
>         available."
>         
>         Il mio problema è come usarli questi metodi. Ora ho capito¹
>         come
>         recuperare gli header della pagina di errore e provo un po' a
>         giocarci
>         alla cieca...
>         
>         ciao
>         
>         Pietro
>         
>         ¹
>         http://stackoverflow.com/questions/6402051/getting-error-headers-with-urllib2
>         
>         
>         
>         _______________________________________________
>         Python mailing list
>         Python a lists.python.it
>         http://lists.python.it/mailman/listinfo/python
>         
> 
> 
> _______________________________________________
> Python mailing list
> Python a lists.python.it
> http://lists.python.it/mailman/listinfo/python




Maggiori informazioni sulla lista Python