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

Python Discussion :

Lancer un script via PHP avec WinPython


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Août 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2011
    Messages : 40
    Par défaut Lancer un script via PHP avec WinPython
    Bonjour @ tous.

    J'ai un 1er fichier PHP à partir duquel je balance sans problème un script Python :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php
    	$output = shell_exec("python /home/script/python/mapfile_compress.py");
    	echo "<pre>$output</pre>";
    ?>
    Problème, la version de Python présente sur le serveur et par conséquent celle déclarée dans le PATH n'est pas correct et je n'ai ni accès au serveur en tant que tel ni accès au PATH.

    Du coup, j'ai essayé de la jouer fine en utilisant la version portable de Python : WinPython

    A partir de là, je me suis dit : il n'y a qu'à remplacer "python" par le chemin du fichier .exe ce qui donne quelque chose comme ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php
        $output = shell_exec("/home/script/python/winpython/python/python.exe /home/script/python/mapfile_compress.py");
        echo "<pre>$output</pre>";
    ?>
    Mais en fait, quenini, j'ai tournée retourné le problème dans tous les sens, bidouillé les simples et double quote ça ne fonctionne pas... enfin si à un moment ça a marché mais je ne m'en suis pas rendu compte de suite puisque l'echo n'a pas echoté, mais pour me souvenir ce que j'avais fait parmi tout mes tests?!

    Je fais donc appel à vous pour savoir si vous aviez une idée qui me permettrait de mener à bien ma mission.

    Par avance merci de votre aide.

    Geo-x

  2. #2
    Membre très actif

    Homme Profil pro
    Bidouilleur
    Inscrit en
    Avril 2016
    Messages
    721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Bidouilleur

    Informations forums :
    Inscription : Avril 2016
    Messages : 721
    Billets dans le blog
    1
    Par défaut
    Salut,

    J'ai pour ma part rien compris, t'es sur un serveur tournant sur linux et tu veux te servir de winpython qui semble être destiné à des systèmes windows, alors à moins qu'il y a wine installé sur ton serveur, ce qui me semble peu probable, et encore pas sûr que ça fonctionne, je comprends pas trop ta démarche d'utiliser un exe sur un serveur linux.

    Et sinon, généralement sur linux, on accède à python 2 via python, et python 3 via python3, t'as au moins testé python3 au préalable ?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Août 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2011
    Messages : 40
    Par défaut
    Bonjour bistouille et merci de votre réponse.

    Pour vous apporter quelques réponses :

    1/ WinPython n'est pas spécialement destiné à des serveurs Windows, il s'agit d'une des deux principales solutions de Python portable.

    2/ C'est justement parce que je n'ai pas accès aux PATH et que Python 3 n'est pas installé sur le serveur destination que je dois utiliser cette version portable

  4. #4
    Membre très actif

    Homme Profil pro
    Bidouilleur
    Inscrit en
    Avril 2016
    Messages
    721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Bidouilleur

    Informations forums :
    Inscription : Avril 2016
    Messages : 721
    Billets dans le blog
    1
    Par défaut
    Ben si justement, c'est pour windows => https://winpython.github.io/

    Tu ne peux pas utiliser un exécutable windows comme ça sur linux.

    Je n'ai pas de solutions à proposer si ce n'est de rendre compatible ton script python3 en python2, donc tu devrais tester ça en local et regarder ce qui coince réellement, bibliothèques externes ? fonctions natives ? etc.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Août 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2011
    Messages : 40
    Par défaut
    Popopo ! Bien vu, je sais pas ou j'ai vu que c'était sur Linux.

    Merci à vous bistouille.

    Je vais regarder de plus près des solutions alternatives (Anaconda ? Scientist Python ?)

    Encore merci.

    Geo-x

  6. #6
    Membre très actif

    Homme Profil pro
    Bidouilleur
    Inscrit en
    Avril 2016
    Messages
    721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Bidouilleur

    Informations forums :
    Inscription : Avril 2016
    Messages : 721
    Billets dans le blog
    1
    Par défaut
    Mouais de toute façon, je ne pense pas que tu puisses installer et lancer tout et n'importe quoi depuis ton home utilisateur, si ton script python est quelque chose que tu as téléchargé sur internet, il y a des chances que quelqu'un d'autre ait rencontré le même problème que toi, une recherche approfondie s'impose.
    Sinon donne toujours le lien, si le script est pas trop complexe, peut être que quelques simples modifications suffiront à le rendre compatible avec python2.

    Si c'est un script maison, bah, tu devrais pouvoir le faire toi-même (ou demander à celui qui l'a fait de faire les modifs), ou de retranscrire ça en php.

Discussions similaires

  1. comment lancer un script PL/SQL avec cx_Oracle
    Par awalter1 dans le forum Général Python
    Réponses: 0
    Dernier message: 28/07/2011, 15h43
  2. [PHP 5.3] Lancer google Earth via PHP
    Par steph_arrow dans le forum Langage
    Réponses: 9
    Dernier message: 12/05/2011, 16h38
  3. Lancer un exécutable via PHP sous linux
    Par MSM_007 dans le forum Langage
    Réponses: 2
    Dernier message: 22/06/2009, 07h45
  4. [Système] Exécuter un script via PHP
    Par steeve93800 dans le forum Langage
    Réponses: 2
    Dernier message: 03/03/2008, 22h20
  5. [Configuration] limite de temps pour l'éxécution de scripts via php-cli
    Par icer dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 28/05/2007, 11h33

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