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 :

[PyCurl] Comment installer ?


Sujet :

Réseau/Web Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 36
    Par défaut [PyCurl] Comment installer ?
    Salut,

    J'essaye actuellement de faire un programme qui visite un site grace à un proxy (Sock5/Socks4/HTTP). Mais voilà urllib2 ne supporte pas les sockets, je me suis alors tourné vers Socksipy qui ne fonctionne pas, ni avec sock5, ni sock4, ni même http...

    Donc j'ai opté pour une librairie alternative, et je tombe sur PyCurl.

    Seulement je n'arrive pas à installer cette dernière, après avoir téléecharger l'archive et extrait les donnés sur le bureau, j'ai ouvert une ligne de commande puis j'ai tapté ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    python setup.py install
    Python n'étant pas reconnu, j'ai alors essayé

    Et là surprise, j'ai une érreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        assert os.path.isdir(CURL_DIR), "please check CURL_DIR in setup.py"
    AssertionError: please check CURL_DIR in setup.py
    C'est alors que j'ouvre le fichier setup.py pour voir le contenu de CURL_DIR. En lisant les commentaires j'ai compris qu'il fallait changer ce chemin (CURL_DIR), mais là je vois pas ce qu'il faut mettre :/

    J'ai peut-être mal procédé, donc si quelqu'un peut m'expliquer comment faire, ça serait gentil

    Je précise que j'ai cherché sur google, mais rien trouvé de concluant :s

    Merci d'avance !

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 741
    Par défaut ou est libcURL?
    pycURL est une API python "vers" libcurl.

    Il faut installer la libcURL 'avant' puis indiquer à setup.py le répertoire où elle a été installée via le switch --curl-dir.
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 36
    Par défaut
    Ok je vais donc installer libcurl et suivre tes instructions. Je te tiens au courant

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 36
    Par défaut
    J'ai donc suivis tes instructions, en indiquant le bon chemin cette fois. Cependant j'ai une nouvelle érreur que voici :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        assert os.path.isfile(o), o
    AssertionError: C:\Documents and Settings\Administrateur\Bureau\curl-7.19.5-deve
    l-mingw32\lib\libcurl.lib
    J'ai essayé avec tout les packages de windows que j'ai pu trouvé sur le site de libcurl (environ 12 versions), mais aucun ne possède le dosser "lib\libcurl.lib"...Enfin je pense que le problème vient de là, mais pas sûr ^_^

  5. #5
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 741
    Par défaut ce truc est galère!
    Si on se fie au message d'erreur, il faut aussi préciser l'extension du nom de la .DLL qui n'est pas .lib.

    Contrairement à hier, j'ai essayé d'aller un peu plus loin et faire fonctionner setup.py en lui donnant répertoires, bibliothèque, et extension n'aboutit à rien: le kit doit être construit via make pour que soient construit les .exe (et c'est make qui appelle setup.py).

    Il n'est pas trop compliqué de construire une toolchain mingw32 - (j'ai fait cela en deux heures sur W2K pour construire psycopg2, il y a quelques temps) - mais je ne dispose pas de l'environnement idéal pour cela.
    Ideal = un environnement de test 'vierge' et non un PC de travail où ce genre d'exercice risque de casser pas mal de choses car il est CYGWIN.

    La seule solution que j'ai trouvé pour faire fonctionner ca sans trop casser mon PC a été de récupérer les binaires Windows de PycURL:
    pycurl-ssl-7.18.2.win32-py2.5.exe à l'URL http://pycurl.sourceforge.net/download/

    Comme son nom l'indique, il ne s'installe qu'avec Python 2.5. Mais çà ne (me) pose pas trop de problème de faire coexister 2.5, 2.6.
    Note: pycurl-ssl-7.18.2.win32-py2.5.exe intalle aussi libcurl.

    J'ai vérifié que çà fonctionne avec:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    C:\py_works\kits\pycurl-7.19.0>python examples\basicfirst.py
    Qui retourne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    Testing libcurl/7.18.2 OpenSSL/0.9.8h zlib/1.2.3
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
    <html>
     <head>
      <title>Index of /dev</title>
    ....
     mod_ssl/2.2.3 OpenSSL/0.9.8c mod_perl/2.0.2 Perl/v5.8.8 Server at curl.haxx.se
    Port 80</address>
    </body></html>
    pycURL est sans doute fort bien mais le packaging est plutôt surprenant.
    Pour le faire tomber en marche sous Windows, il y a du boulot - sauf de disposer de l'environnement de build qui va bien.

    Bon courage
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 36
    Par défaut
    Désolé de répondre (très) tardivement mais j'avais carrément zappé python et je me suis relancé dans le c++/php.

    Là j'ai repris python, et j'ai testé ta solution qui fonctionne à merveille !

    Encore merci

    Edit : J'ai un dernier "problème", quand je compile je vois cette érreur

    'import site' failed; use -v for traceback
    J'ai essayé de lancer mon programme avec option "-v" mais ça change rien :/

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

Discussions similaires

  1. [Linux] comment installer GLUT
    Par Mathieu.J dans le forum GLUT
    Réponses: 5
    Dernier message: 28/09/2012, 17h39
  2. Comment installer GMP sous Windows?
    Par Vinchol dans le forum Autres éditeurs
    Réponses: 9
    Dernier message: 13/07/2006, 10h05
  3. Réponses: 5
    Dernier message: 24/11/2002, 11h36
  4. Réponses: 7
    Dernier message: 01/05/2002, 20h23
  5. [Kylix] Comment installer Kylix sur Mandrake 8.2 (page2)
    Par Philippe LE PONT dans le forum EDI
    Réponses: 3
    Dernier message: 01/05/2002, 12h52

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