Je rencontre un problème étrange. J'ai cette application Python et lorsque je tente d'ouvrir une URL dans l'application, par exemple urllib2.urlopen("http://google.com", None)
je reçois l'erreur suivante:getaddrinfo impossible de résoudre l'hôte
IOError: [Errno socket error] [Errno 8] nodename nor servname provided, or not known
Cependant quand je fais la même chose sur l'interpréteur de ligne de commande python, il fonctionne très bien. Le même exécutable python est utilisé pour l'application et la ligne de commande.
nslookup google.com
semble fonctionner correctement. J'ai ouvert wireshark et il semble que lorsque l'application essaie d'ouvrir google.com
seulement une requête mDNS sort pour "My-Name-MacBook-Pro.local"
. Toutefois, lorsque la ligne de commande tente d'ouvrir google.com
une requête DNS normale sort pour "google.com"
, j'ai trouvé si j'ai codé en dur IP de Google dans /etc/hosts
puis la demande de l'application a finalement commencé à travailler.
Il semble que quelque chose d'étrange doit changer la façon dont l'application résout les noms de domaine, mais je n'ai aucune idée de ce qui pourrait être fait. Je suis sous Mac OSX 10.6.7 et Python 2.6.
Modifier: Je ne suis pas d'utiliser un proxy pour accéder à Internet
Utilisez-vous réellement '' urllib' ou urllib2'? S'il vous plaît corriger les balises sur votre question si 'urllib2 'est faux – agf
utilisez-vous un proxy pour accéder à Internet? – monkut