J'essaie de lire une URL dans notre réseau d'entreprise. Spesifically le serveur je contacter est dans un bureau et le PC client est dans un autre:Qu'est-ce qui provoque urllib2.urlopen() à se connecter via proxy?
print(urlopen(r"http://london.mycompany/mydir/").read())
Chaque fois que je lance cette fonction je reçois:
Traceback (most recent call last):
File "<stdin>", line 1, in ?
File "C:\Python24\lib\urllib2.py", line 130, in urlopen
return _opener.open(url, data)
File "C:\Python24\lib\urllib2.py", line 364, in open
response = meth(req, response)
File "C:\Python24\lib\urllib2.py", line 471, in http_response
response = self.parent.error(
File "C:\Python24\lib\urllib2.py", line 402, in error
return self._call_chain(*args)
File "C:\Python24\lib\urllib2.py", line 337, in _call_chain
result = func(*args)
File "C:\Python24\lib\urllib2.py", line 480, in http_error_default
raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
urllib2.HTTPError: HTTP Error 407: Proxy Authentication Required
La chose étrange est qu'il n'y a pas de pare-feu entre ces deux ordinateurs - pour une raison quelconque url a décidé de se connecter au serveur web via le proxy que nous utilisons normalement pour se connecter au contenu en dehors de l'entreprise, et dans ce cas, cela échoue parce que je ne l'ai pas authentifié. Je suis assez sûr que la panne se produit dans le PC client: J'ai fait un nslookup et un ping au serveur pour confirmer qu'il y a une connexion entre les deux ordinateurs, mais quand je regarde la transaction en utilisant TCPView pour Windows I peut voir que le processus python.exe se connecte à un serveur complètement différent (oui, le proxy!).
Alors qu'est-ce qui pourrait causer cela? Notez que la variable os.environ ["http_proxy"] n'est PAS définie - cette variable est souvent utilisée pour connecter urllib via un serveur proxy. Ce n'est pas le cas ici. Pourrait-il y avoir quelque chose d'autre qui pourrait avoir le même effet? Exécution de Python 2.4.4 sous Windows XP 32 bits dans un environnement d'entreprise très verrouillé.
Avez-vous essayé de vous connecter à l'adresse IP? Qu'est-ce qui se passe alors? Si l'adresse IP fonctionne, vous rencontrez des problèmes avec la recherche de domaine. – marr75