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 :

[Urllib2] Problème de proxy


Sujet :

Réseau/Web Python

  1. #1
    Membre éclairé
    Inscrit en
    Mai 2008
    Messages
    317
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 317
    Par défaut [Urllib2] Problème de proxy
    Bonjour à tous.

    Je cherche a faire des requette http sur le web mais j'ai un problème avec urllib2:
    lorsque je fais une requete en local, aucun soucis tout fonctionne correctement, par contre je n'arrive pas a sortir:
    j'ai une erreur 503 récurante.
    je suppose que c'est dû au proxy.
    j'ai donc tenté de le configurer, mais ça ne fonctionne toujours pas:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    import urllib2
     
    #j'ai également essayé la méthode souvent décrite sur internet:
    #proxy_support = urllib2.ProxyHandler({"http://192.168.1.142:3128", "http"})
    # ou
    #proxy_support = urllib2.ProxyHandler({})
    #opener = urllib2.build_opener(proxy_support)
    #urllib2.install_opener(opener)
     
    url = "http://google.fr"
    Request = urllib2.Request(url)
    Request.set_proxy("http://192.168.1.142:3128", "http")
    try:
      urlo = urllib2.urlopen(Request)
    except urllib2.httplib.BadStatusLine:
      print url,"\nError reading response"
    except IOError,e:
      print "%s\n%s" % (url, e)
    page = urlo.read()
    print page
    Si quelqu'un à une idée, ça serrait sympa
    Merci.

  2. #2
    Membre émérite
    Avatar de Antoine_935
    Profil pro
    Développeur web/mobile
    Inscrit en
    Juillet 2006
    Messages
    883
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur web/mobile

    Informations forums :
    Inscription : Juillet 2006
    Messages : 883
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Request.set_proxy("http://192.168.1.142:3128", "http")
    Bizarre que le protocole soit spécifié deux fois...
    Tu as essayé en retirant le http:// de l'adresse ?

    Edit: Voici ce qui sort de mon bouquin HTTP:
    503: Utilisé pour indiquer que le serveur ne peut pas servir la requête pour l'instant, mais qu'il le pourra dans le futur. Si le serveur sait quand la ressource redeviendra disponibles, il peut include un header Retry-After dans la réponse.

    Essaye de voir aussi si tu as des headers Via dans la réponse, qui peuvent donner des informations sur les proxies aux travers desquels tu es passé (ou non, du coup...)

  3. #3
    Membre éclairé
    Inscrit en
    Mai 2008
    Messages
    317
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 317
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    url = "http://google.fr"
    Request = urllib2.Request(url)
    Request.set_proxy("http://192.168.1.142:3128", "http")
    try:
      urlo = urllib2.urlopen(Request)
    except urllib2.httplib.BadStatusLine:
      print url,"\nError reading response"
    except IOError,e:
      print "%s\n%s" % (url, e)
    page = urlo.read()
    print page
    => HTTP Error 503: Service Unavailable

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    url = "http://google.fr"
    Request = urllib2.Request(url)
    Request.set_proxy("192.168.1.142:3128", "http")
    try:
      urlo = urllib2.urlopen(Request)
    except urllib2.httplib.BadStatusLine:
      print url,"\nError reading response"
    except IOError,e:
      print "%s\n%s" % (url, e)
    page = urlo.read()
    print page
    => HTTP Error 503: Service Unavailable

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    import urllib2
    #Avec ou sans http:// devan l'adresse: aucun changement dans le message d'erreur
    proxy_support = urllib2.ProxyHandler({"http" : "http://192.168.1.142:3128"})
    opener = urllib2.build_opener(proxy_support, urllib2.CacheFTPHandler)
    urllib2.install_opener(opener)
    f = urllib2.urlopen('http://www.python.org/')
    print f.read()
    =>
    Traceback (most recent call last):
    File "C:\Python26\projets\renvoie\test2.py", line 8, in <module>
    f = urllib2.urlopen('http://www.python.org/')
    File "C:\Python26\lib\urllib2.py", line 124, in urlopen
    return _opener.open(url, data, timeout)
    File "C:\Python26\lib\urllib2.py", line 389, in open
    response = meth(req, response)
    File "C:\Python26\lib\urllib2.py", line 502, in http_response
    'http', request, response, code, msg, hdrs)
    File "C:\Python26\lib\urllib2.py", line 427, in error
    return self._call_chain(*args)
    File "C:\Python26\lib\urllib2.py", line 361, in _call_chain
    result = func(*args)
    File "C:\Python26\lib\urllib2.py", line 510, in http_error_default
    raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
    HTTPError: HTTP Error 503: Service Unavailable

  4. #4
    Membre émérite

    Profil pro
    Inscrit en
    Août 2004
    Messages
    723
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 723
    Par défaut
    J'ai essayé ça (en prenant un proxy quelconque qui fonctionne) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    import urllib2
     
    req = urllib2.Request('http://www.python.org/')
    proxy = urllib2.ProxyHandler({"http" : "221.94.35.46:8080"})
    opener = urllib2.build_opener(proxy)
    f = opener.open(req)
    print f.read()
    Mis à part les Connection Refused venant du proxy lui-même (qui viennent de temps en temps, j'ai testé aussi avec un navigateur), j'obtiens le contenu de la page d'accueil de python.org.

  5. #5
    Membre éclairé
    Inscrit en
    Mai 2008
    Messages
    317
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 317
    Par défaut
    Bah ça, ça marche ^^
    alors je sais pas trop pourquoi, mais pour le moment ça me va.
    Merci beaucoup

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

Discussions similaires

  1. [urllib2] Problème de configuration d'un proxy
    Par Azral dans le forum Réseau/Web
    Réponses: 5
    Dernier message: 17/01/2013, 22h58
  2. Problème de Proxy
    Par fabrice1978 dans le forum Applets
    Réponses: 3
    Dernier message: 03/12/2007, 16h33
  3. Problème de Proxy
    Par FrankOVD dans le forum Apache
    Réponses: 1
    Dernier message: 21/09/2007, 15h10
  4. [C#]Problème timeout proxy
    Par mimibobo dans le forum Services Web
    Réponses: 9
    Dernier message: 30/10/2006, 09h27
  5. Problème de proxy avec Firefox
    Par shukin dans le forum Autres langages pour le Web
    Réponses: 3
    Dernier message: 13/12/2005, 12h10

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