Lancer script python avec venv - modules non trouvés

Bonjour,

J’essaye de lancer un script python qui se connecte à une API, récupère la réponse, la reformate un message textuel compréhensible par un humain. L’objectif est de lire ce message avec le plugin Google Cast lorsque j’active un scénario.

Le script fonctionne bien en standalone sur mon pc dans son environnement virtuel.
J’ai recréé dans /home/pi un répertoire next_trains. J’y ai créé un environnement virtuel venv où j’ai installé toutes les dépendances (dont pandas). pip list me confirme que le module est bien installé.

Dans le plugin script, j’appelle un script bash qui reprend les commandes suivantes:

#! /bin/bash
source /home/pi/next_trains/venv/bin/activate
sudo python3 /home/pi/next_trains/import_requests.py

Je reçois le message suivant:
Erreur sur /home/pi/next_trains/launch.sh 2>&1 valeur retournée : 1. Détails : Traceback (most recent call last): File "/home/pi/next_trains/import_requests.py", line 5, in from pandas import DataFrame ModuleNotFoundError: No module named 'pandas'

Est-ce que le plugin script peut fonctionner avec les environnements virtuels python? Si oui, comment?
Sinon, dois-je absolument installer mes dépendances de manière globale?

Merci d’avance,

Sébastien

Pourquoi lancer un script bash alors que l’on peut directement lancer monfichier.py ?

Par défaut pip list liste les modules de la lib python2 hors tu exécutes python3 qui par défaut va chercher ses modules dans la lib python3 listés par défaut par pip3 list.

akenad :slight_smile:

2 « J'aime »

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.