IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Réseau/Web Python Discussion :

urlopen et gestion des codes retour


Sujet :

Réseau/Web Python

  1. #1
    Membre du Club
    Inscrit en
    Septembre 2002
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 63
    Points : 55
    Points
    55
    Par défaut urlopen et gestion des codes retour
    bonjour,

    je voudrais savoir comment gérer les codes erreurs de retour comme 404 lors de la tentive d'ouverture et de lecture d'url:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    import urllib
    fic = urllib.urlopen(url désirée).read()
    je voudrais afficher une boite de dialogue si l'url n'existe pas ou est mal orthografiée pour cela j'ai besoin de réccupérer le code erreur en cas de problème.

    Merci pour votre aide.

  2. #2
    Membre éclairé
    Avatar de parp1
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    829
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 829
    Points : 872
    Points
    872
    Par défaut
    Salut j'ai un peu cherché car je ne connais jamais la syntaxe exact pour la gestion de erreurs.

    Va voir ici :C'est bien expliqué.

    Tu n'as plus qu'a regarde du coté des IOError

    Ta console doit te retourne ce genre d'erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    IOError : Connection Failed..
    Sert toi du type d'erreur fournis.
    [SIZE="2"]Dis moi qui tu suis, je te dirais qui je Hais!
    Heureux est l'étudiant, qui comme la rivière suit son cours sans sortir de son lit

    Mon premier Tutoriel


    A 80% des cas je résouts mon problème en rédigeant une nouvelle discussion, du coup je ne poste que 20% de mes problèmes...

  3. #3
    Membre du Club
    Inscrit en
    Septembre 2002
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 63
    Points : 55
    Points
    55
    Par défaut
    merci pour ta réponse
    ça devrait convenir

  4. #4
    Membre éclairé
    Avatar de parp1
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    829
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 829
    Points : 872
    Points
    872
    Par défaut
    Tiens voila le code que j'avais mis sur mon programme, je ne l'ai toujours pas fini.

    D'ailleur si quelqu'un sais comment se connecter a une URL avec login + password... ca m'interesse. Merci;

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    def function():
        try:
            urllib.urlopen("http://www.goo")       
            print "connection effectuée sur google.fr"
        except IOError:
            urllib.urlopen("http://www.google.com")
            print "connection effectuée sur google.com"
    [SIZE="2"]Dis moi qui tu suis, je te dirais qui je Hais!
    Heureux est l'étudiant, qui comme la rivière suit son cours sans sortir de son lit

    Mon premier Tutoriel


    A 80% des cas je résouts mon problème en rédigeant une nouvelle discussion, du coup je ne poste que 20% de mes problèmes...

  5. #5
    Membre éclairé
    Avatar de parp1
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    829
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 829
    Points : 872
    Points
    872
    Par défaut
    J'ai trouver mieux !

    Sur le Wiki de Code Reseaux.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    #! python
    try:
        urlfile = urllib2.urlopen('http://sebsauvage.net/nonexistingpage.html')
    except urllib2.HTTPError, exc:
        if exc.code == 404:
            print "Page non trouvée !"
        else:
            print "La requête HTTP a échoué avec le code %d (%s)" % (exc.code, exc.msg)
    except urllib2.URLError, exc:
        print "Echec. Cause:", exc.reason
    [SIZE="2"]Dis moi qui tu suis, je te dirais qui je Hais!
    Heureux est l'étudiant, qui comme la rivière suit son cours sans sortir de son lit

    Mon premier Tutoriel


    A 80% des cas je résouts mon problème en rédigeant une nouvelle discussion, du coup je ne poste que 20% de mes problèmes...

  6. #6
    Membre du Club
    Inscrit en
    Septembre 2002
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 63
    Points : 55
    Points
    55
    Par défaut
    je vais tester avec urlib2 aussi
    merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Toutes versions] Gestion des codes VBA
    Par tototiti2008 dans le forum Contribuez
    Réponses: 11
    Dernier message: 03/11/2021, 21h34
  2. Outil de gestion des codes d'erreur
    Par christini dans le forum EDI et Outils pour Java
    Réponses: 2
    Dernier message: 07/10/2008, 11h07
  3. Gerer des codes retour avec BulK Insert
    Par Macfurp dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 26/11/2007, 17h58
  4. [C#]Un OCX pour la gestion des codes à barres
    Par WOLO Laurent dans le forum Windows Forms
    Réponses: 4
    Dernier message: 13/02/2006, 11h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo