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 python sans installation préalable


Sujet :

Python

  1. #1
    Membre confirmé
    Avatar de Captain'Flam
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2011
    Messages
    273
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 273
    Points : 455
    Points
    455
    Billets dans le blog
    1
    Par défaut Lancer un script python sans installation préalable
    Bonjour,

    petite question de débutant :

    j'ai écrit un petit script python que je voudrais pouvoir lancer de n'importe quel PC (sous Windows) même si python n'est pas installé dessus.

    Sur une clef USB, j'ai créé un dossier ("exec") contenant mon script ("spam.py") + un batch ("spam.bat") + tout le dossier python (avec python.exe + tous les sous dossiers DLLs, include, Lib, libs, Scripts, tcl et Tools).

    Voici le contenu de spam.bat :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    set path=%cd%\Python27;%cd%\Python27\Scripts;%path%
    %cd%\Python27\python.exe spam.py
    Quand je lance spam.bat, voici le message que je reçois :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    spam.bat [5]  Cette application n'a pas pu démarrer car la configuration de l'application est incorrecte. 
    Réinstaller l'application pourrait résoudre ce problème.
    "G:\exec\Python27\python.exe"
    D'où ma question : que dois-ajouter à spam.bat pour que python ait l'impression d'avoir été correctement installé ?
    En espérant que ce soit possible...

    Merci d'avance !
    Captain'Flam
    anciennement Sopsag, aka Hadrien
    Win seven x64 & Win 10 / Visual 2017 / Python 2.7 / Eclipse

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Il y a bien longtemps que je ne programme plus sur MS-Windows, mais il me semble qu'une installation d'application sur cet OS implique aussi d'enregistrer l'appli dans la base de registres => au lancement de python.exe, il y a certainement consultation de clés de registre - absentes dans votre cas de figure - et donc déclenchement d'erreur.

    Maintenant, il est possible que ce ne soit pas cela l'origine de votre problème, j'avoue ne pas connaître les dernières évolutions en date de cet environnement.

    @+.

  3. #3
    Expert éminent
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 461
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 461
    Points : 9 248
    Points
    9 248
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    Pour le système Python: utilise plutôt "portablepython": il est fait pour ça. On peut ainsi transporter un programme autonome sur une clé USB et passer d'un PC à un autre: c'est très pratique, et ça marche bien!

    portablepython existe en 2.7 et 3.2 et comporte déjà pas mal de modules intégrés.
    Un expert est une personne qui a fait toutes les erreurs qui peuvent être faites, dans un domaine étroit... (Niels Bohr)
    Mes recettes python: http://www.jpvweb.com

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par tyrtamos Voir le message
    Bonjour,

    Pour le système Python: utilise plutôt "portablepython" : il est fait pour ça. On peut ainsi transporter un programme autonome sur une clé USB et passer d'un PC à un autre: c'est très pratique, et ça marche bien!

    portablepython existe en 2.7 et 3.2 et comporte déjà pas mal de modules intégrés.
    Wow ! c'est génial ce truc ! Merci pour l'info !

    @+.

  5. #5
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 203
    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 203
    Points : 36 631
    Points
    36 631
    Par défaut
    Salut,

    La registry sert à trouver l'emplacement de... dans ce que fait le PO, il n'y en a pas besoin: ca devrait "fonctionner" pour peu qu'on renseigne correctement le PATH.
    (et il faut "plus" que "trouver" python.exe).
    Il y a un projet google code qui documente toute la cuisine à faire.
    Bonne lecture,

    - W

    PS: Avec Python, la registry m'embête car certains packages (des builds) l'utilisent pour trouver la version de Python alors que d'autres permettent de choisir le répertoire Python.
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  6. #6
    Expert éminent
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 461
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 461
    Points : 9 248
    Points
    9 248
    Billets dans le blog
    6
    Par défaut
    Merci pour le lien, wiztricks, c'est très intéressant

    portablepython est très pratique: on installe à l'endroit qu'on veut en choisissant les modules dont on a besoin, et ça marche. Je l'utilise souvent, y compris avec des programmes graphiques PyQt4.

    Mais il y a 2 limites:

    1- il y a toujours un retard de version: j'aimerais Python 3.4.1, mais il n'y a que portablepython 3.2.5 de disponible

    2- portablepython est livré avec pas mal de modules, mais pas tous! Si on veut ajouter un module en pur python, c'est possible (j'ai ainsi pu ajouter PyPDF2 dont j'avais besoin), mais si l'installation est plus complexe, ça ne marche plus.

    Aussi, une autre solution comme celle abordée par le lien serait intéressante: créer le Python qu'on veut, et pouvoir le rendre autonome.

    Dans tous les cas sous Windows, il est nécessaire d'intégrer dans le fichier .bat de lancement, la mise à jour de PATH et PYTHONPATH pour que le programme n'aille pas utiliser des morceaux du Python installé.
    Un expert est une personne qui a fait toutes les erreurs qui peuvent être faites, dans un domaine étroit... (Niels Bohr)
    Mes recettes python: http://www.jpvweb.com

  7. #7
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 203
    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 203
    Points : 36 631
    Points
    36 631
    Par défaut
    Salut,

    Citation Envoyé par tyrtamos Voir le message
    portablepython est très pratique: on installe à l'endroit qu'on veut en choisissant les modules dont on a besoin, et ça marche. Je l'utilise souvent, y compris avec des programmes graphiques PyQt4.
    Mais il y a 2 limites:

    1- il y a toujours un retard de version: j'aimerais Python 3.4.1, mais il n'y a que portablepython 3.2.5 de disponible

    2- portablepython est livré avec pas mal de modules, mais pas tous! Si on veut ajouter un module en pur python, c'est possible (j'ai ainsi pu ajouter PyPDF2 dont j'avais besoin), mais si l'installation est plus complexe, ça ne marche plus.
    Ce doit être pratique pour les utilisateurs de Python qui ne sont pas programmeurs: étudiants, scientifiques, ingénieurs,...
    Ils peuvent récupérer un ensemble qui fonctionne en espérant qu'il contient les packages qui répondent à leur besoin.
    Le but est d'avoir un ensemble cohérent qui fonctionne tant pis s'il y a du retard côté version.
    Ils peuvent commencer à bosser sans avoir pris le temps de choisir les packages à installer, tester s'ils sont installés proprement, ....

    Imaginez une salle de TP avec plein de PC à disposition, çà évite les galères de coherence des environnements et on peut continuer "confiant" à la maison.

    En ce qui me concerne, je préfère trimballer mon PC, créer des VM si nécessaire et gérer moi même les dépendances.

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

  8. #8
    Expert éminent
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 461
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 461
    Points : 9 248
    Points
    9 248
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    Citation Envoyé par wiztricks Voir le message
    En ce qui me concerne, je préfère trimballer mon PC, créer des VM si nécessaire et gérer moi même les dépendances.
    Je n'utilise pas portablepython pour faire du développement, mais pour confier à plusieurs personnes des tâches de saisie de données. Je fournis des clés USB avec le programme de saisie (PyQt4), ce qui permet aux personnes concernées de travailler chez elles (ou n'importe où ailleurs). Les données saisies me sont ensuite transmises par internet pour intégration dans une base de données. Ça marche très bien. Pour 2015, je travaille sur une mise à jour à distance des logiciels des clés USB.
    Un expert est une personne qui a fait toutes les erreurs qui peuvent être faites, dans un domaine étroit... (Niels Bohr)
    Mes recettes python: http://www.jpvweb.com

  9. #9
    Membre confirmé
    Avatar de Captain'Flam
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2011
    Messages
    273
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 273
    Points : 455
    Points
    455
    Billets dans le blog
    1
    Par défaut
    Je n'aurais que 2 mots : et

    Nom seulement l'installation est d'une simplicité biblique, mais en plus, il vient avec un stock de librairies très complet ! (en + des standards de python).

    Et pour ceux qui, comme moi, ont donné, on peut shunter la pop up en appelant directement le python.exe qui est dans le dossier App.
    Captain'Flam
    anciennement Sopsag, aka Hadrien
    Win seven x64 & Win 10 / Visual 2017 / Python 2.7 / Eclipse

  10. #10
    Membre chevronné
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2013
    Messages
    1 602
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 602
    Points : 2 068
    Points
    2 068
    Par défaut
    Sinon, il y a Winpython portable (à installer sur une clé usb) en version 3.3 :
    http://sourceforge.net/projects/winpython/files/
    Pas d'aide par mp.

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

Discussions similaires

  1. SWIG probleme pour lancer le script python dans mon code C++ et récupérer un objet
    Par spartan811 dans le forum Interfaçage autre langage
    Réponses: 3
    Dernier message: 11/05/2012, 17h23
  2. Lancer un script python avec argument depuis shell
    Par tidusff10 dans le forum Général Python
    Réponses: 1
    Dernier message: 30/03/2012, 13h44
  3. Réponses: 3
    Dernier message: 28/03/2012, 20h20
  4. Réponses: 8
    Dernier message: 30/09/2009, 19h25
  5. [Système] Lancer un script python en PHP
    Par gannher dans le forum Langage
    Réponses: 10
    Dernier message: 13/09/2007, 12h24

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