Faire un don ! | | style | statistiques | contactez-nous | plan | lettre d'information

Programmation.python : urllib + .htaccess

Posté par Robert VISEUR (page perso, ) le 23 février 2006
Bonjour,



J'ai un robot qui est utilisé pour agréger du contenu RSS.

Problème, quand un site est en maintenance, il bloque souvent le RSS par .htaccess et mon robot bloque sur le fichier en demandant le login et le mot de passe.



Est-il possible de dire en Python 'si accès bloqué, tu zappes ou tu déclenches une erreur' ?

Si oui, comment ?



Merci d'avance !

R.

> Lire le message (2 commentaires, moyenne: 2).  

Vous avez demandé le commentaire #685240.

urllib2

Posté par Brahici () le 24/02/2006 à 08:50. (lien). Évalué à 3.

salut, j'ai une proposition utilisant urllib2

opener = urllib2.build_opener()
try:
    resp = opener.open(url , query)
except urllib2.HTTPError , http_exception:
    if http_exception.code == 401:
        print 'authentication required !'
    else:
        raise
c'est juste un exemple issu d'un code plus élaboré, mais l'idée est là.

--
python, postgresql, xml, gtk, linux, open-source !
  • [^]Re: urllib2

    Posté par Robert VISEUR (page perso, ) le 02/03/2006 à 11:20. (lien). Évalué à 1.

    merci

    exemple qui marche aussi avec urllib (indenter correctement)


    class myOpener(urllib.FancyURLopener):
    def prompt_user_passwd(self,host,realm):
    raise RuntimeError, "acces protege par htaccess"
    urllib._urlopener = myOpener()


    il suffit d'intercepter dans le try except du programme qui fait l'appel.