Exception dans urllib.request.urlopen
Fermémamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 - 5 avril 2023 à 14:47
- Exception dans urllib.request.urlopen
- Erreur d'application : une exception côté client s'est produite (voir la console du navigateur pour plus d'informations) . - Windows 11
- After effect unknown exception - Forum Graphisme
- An exception occurred in the driver: could not find driver - Forum PHP
- A java exception has occurred ✓ - Forum Minecraft
- Appliquez à tous les paragraphes du document, à l’exception des titres ou sous-titres, cette mise en forme : les textes doivent être en retrait de 2 cm par rapport aux marges à gauche et à droite, chaque paragraphe doit être espacé de 0,42 cm ou 12 pt du paragraphe suivant. sur quelle page se trouve le titre "la cheminée" dans les informations diverses ? ✓ - Forum Word
4 réponses
31 mars 2023 à 17:21
bonjour,
Sans ton code, cela n'est pas très clair. Tu veux dire que tu ne parviens pas à intercepter l'erreur avec un try/except?
31 mars 2023 à 17:25
oui j'ai déjà pas mal de except après mon try, mais ce sont des except trouvé à droite à gauche, mais j'aimerai trouvé tous ce qu'il existe (peut etre que c'est dans la librairie, ou dans un site référentiel)
voici mon try et mes except
try: ip = url.urlopen("http://monip.outils-rezo.info/text").read().decode() except HTTPError as error: logging.error('HTTP Error: Data of %s not retrieved because %s\nURL: %s', name, error, url) sys.exit() except URLError as error: if isinstance(error.reason, timeout): print ("Timeout Error: Data not retrieved because %s\nURL: %s" % (error, url)) exit() else: print ("URL Error: Data not retrieved because %s\nURL: %s" % (error, url)) exit() except url.socket.error as e: print ("URLError : Une autre erreur avec le serveur : "+str(e)) exit() except url.HTTPError as e: print ("HTTPError : Le serveur n a pas pu repondre a la demande.") print ('Code erreur : ', e.code) exit() except url.URLError as e: print ("URLError : Nous n\'avons pas reussi a atteindre le serveur .") print ("Code erreur : ", e.reason) exit()
31 mars 2023 à 19:14
Tu peux intercepter toutes les erreurs, même celles que tu ne connais pas. Je pense qu'on n'est jamais certain qu'un développeur ne va pas ajouter une nouvelle erreur sans la documenter.
Modifié le 31 mars 2023 à 18:30
est-ce que toutes les exceptions sont ici ?
https://github.com/python/cpython/blob/3.11/Lib/urllib/error.py
il y aurait que 3 exceptions :URLError, HTTPError et ContentTooShortError
Modifié le 5 avril 2023 à 14:47
Bonjour,
Personnellement j'utiliserais requests.
import requests ret = requests.get("http://monip.outils-rezo.info/text") if ret.status_code == 200: content = ret.content.decode() print(content)
Bonne chance
31 mars 2023 à 17:26
un exemple: