Dépendances et fichiers
Organiser le script en plusieurs fichiers, gérer son dossier privé, installer des packages pip et réutiliser le code d'autres scripts.
Un script est rarement seulement le main.py. Cette page couvre tout ce qui
vit autour de lui : les fichiers du script (modules Python, configuration,
données générées), les packages pip installés dans son environnement, et
les scripts utilisés comme dépendance — du code d'un autre script, de
cette app ou d'une autre, importé par le vôtre.
Tout cela se gère dans l'arborescence latérale : déployez le nœud du script (la flèche à gauche du nom) et trois entrées apparaissent — Fichiers, Dépendances et Planifications. Les deux premières sont le sujet de cette page.

Le dossier du script
Chaque script a un dossier privé sur le serveur. C'est là que vivent le
main.py, les modules que vous créez, les fichiers que vous téléversez et
tout ce que le script écrit sur disque pendant les exécutions. Deux points
importants :
- Le dossier est le dossier de travail des exécutions : un chemin relatif
dans le code (
open("données/clients.csv")) lit et écrit là-dedans. - Le dossier est privé au script — aucun autre script n'y touche, même par erreur.
Le nœud Fichiers dans l'arborescence montre le dossier tel qu'il est, avec le nombre de fichiers indiqué à côté. Cliquer sur un fichier l'ouvre dans l'éditeur du script.
Créer des fichiers et des dossiers
Passez la souris sur la ligne Fichiers pour voir ses trois boutons :
| Bouton | Ce qu'il fait |
|---|---|
| Nouveau fichier | Crée un fichier de n'importe quelle extension — code, config, données. |
| Nouveau dossier | Crée un dossier logique dans le dossier du script. |
| Téléverser des fichiers | Envoie des fichiers de votre ordinateur vers le dossier du script. |
Pour créer un fichier :
- Cliquez sur Nouveau fichier.
- Remplissez Chemin du fichier — ex. :
utils.pyoudonnées/clients.csv. Les sous-dossiers s'écrivent avec/et sont créés s'ils n'existent pas. - Cliquez sur Créer. Si c'est un fichier texte, il s'ouvre aussitôt dans l'éditeur.

Gestes directs dans l'arborescence :
- Renommer : double-clic sur le nom, écrivez,
Entrée. - Déplacer : faites glisser le fichier (ou le dossier) vers un autre dossier de l'arborescence.
- Retirer : le × qui apparaît au survol de la ligne. Le retrait est
immédiat et définitif — et les
importqui utilisaient le fichier se mettent à échouer. - Téléverser : en plus du bouton, vous pouvez faire glisser des fichiers de votre ordinateur directement sur l'arborescence — les lâcher sur un dossier les envoie là.
Atenção
Trois fichiers sont protégés et ne peuvent être ni renommés ni retirés :
main.py (l'entrée du script), api_manager.py (le SDK, posé là pour
l'autocomplétion) et requirements.txt (la liste des packages pip, gérée
par le panneau des dépendances).
Découper le script en modules
Vous pouvez découper le code en autant de fichiers .py que vous voulez —
tous dans le dossier du script — et les importer directement, sans
configuration :
# config.py
CONFIG = {"limite": 100, "moeda": "EUR"}
# main.py
from api_manager import db, log
from config import CONFIG
def main(input):
linhas = db("Dados CRM").query(
"select * from oportunidades limit ?", [CONFIG["limite"]]
)
log(len(linhas), "opportunités lues")
return {"total": len(linhas)}
L'éditeur connaît vos modules : l'autocomplétion suggère from config import … comme elle suggère le SDK.
Fichiers produits par les exécutions
Le script peut écrire des fichiers à volonté — un Excel généré pour l'envoyer par e-mail, un CSV de travail, un cache. Ils restent dans le dossier du script et apparaissent sous le nœud Fichiers, où vous pouvez les ouvrir dans l'éditeur ou les retirer.
Dica
Un script peut s'exécuter très souvent. Utilisez des noms déterministes —
ex. : rapport_2026-08.xlsx, réécrit à chaque exécution — plutôt que des
noms uniques qui s'accumulent jusqu'à remplir le disque.
Deux limites de l'éditeur (pas du script) :
- Les fichiers binaires (un
.xlsx, une image) ne s'ouvrent pas dans l'éditeur — l'arborescence le signale. Le script continue de les lire et de les écrire normalement. - Les fichiers texte de plus de 10 Mo ne s'ouvrent pas non plus dans l'éditeur, pour la même raison — le script peut toujours les utiliser.
Installer des packages pip
La bibliothèque standard de Python est toujours disponible. Pour les packages
externes (requests, pandas, openpyxl, …), chaque script a son propre
environnement Python, isolé des autres — installer ici ne change rien dans
les autres scripts.
- Dans l'arborescence, déployez le script et cliquez sur la clé à molette de la ligne Dépendances (Gérer les dépendances (packages et scripts)).
- Dans la fenêtre Dépendances du script (pip + scripts), section
Ajouter un package PyPI, saisissez le nom exact du package — ex. :
openpyxl— et cliquez sur Vérifier. La plateforme confirme sur PyPI qu'il existe et affiche le nom, la version la plus récente et la description. - Cliquez sur Installer. Le package rejoint le tableau Packages installés, avec sa version.
- Dans le code, importez-le normalement :
import openpyxl.

La ligne Environnement Python : en haut de la fenêtre indique l'état de l'environnement du script :
| État | Signifie |
|---|---|
| à créer (se crée à la première installation ou exécution) | Aucun package n'a encore été installé et le script n'a jamais tourné. |
| prêt | L'environnement existe et est utilisable — la version de Python apparaît à côté. |
| endommagé | Quelque chose a cassé l'environnement (ex. : une mise à jour sur le serveur). Utilisez Reconstruire le venv. |
Trois gestes de plus dans la même fenêtre :
- Réinstaller — apparaît à la place d'Installer quand le package est déjà là ; force une réinstallation.
- Désinstaller — sur la ligne du package installé. Les
importde ce package dans le script se mettent à échouer jusqu'à sa réinstallation. - Reconstruire le venv — supprime et recrée l'environnement entier, en réinstallant tous les packages de la liste. Utile après une mise à jour de Python sur le serveur.
Nota
L'environnement se reconstruit tout seul à partir de la liste de packages chaque fois que c'est nécessaire — la liste est la vérité, l'environnement en est dérivé. Les packages apparaissent aussi sous la ligne Dépendances dans l'arborescence, chacun avec sa version.
Des scripts comme dépendance
En plus des packages, un script peut réutiliser un autre script — de cette app ou d'une autre à laquelle vous avez accès. Les fichiers du script référencé deviennent disponibles dans un dossier portant l'alias que vous choisissez, synchronisé avant chaque exécution : vous corrigez le script d'origine, et ceux qui en dépendent utilisent aussitôt la version corrigée.
- Ouvrez le gestionnaire de dépendances (clé à molette de la ligne Dépendances).
- Dans la section Scripts comme dépendance : choisissez l'App,
choisissez le Script, et donnez-lui un Alias (import) — ex. :
consolidado. L'alias doit être un identifiant Python valide. - Cliquez sur Ajouter.
- Dans le code, importez par les modules de l'alias :
from consolidado.main import main as consolidar
def main(input):
resultado = consolidar({"args": {}, "prev": None, "context": {}})
return {"consolidado": resultado}
Les règles que la plateforme impose à l'ajout :
- Seuls apparaissent les scripts du même runtime et des apps auxquelles vous avez accès.
- Un script ne peut pas dépendre de lui-même.
- L'alias ne peut pas se répéter ni coïncider avec un fichier ou un dossier qui existe déjà dans le dossier du script.
Atenção
Les packages pip du script référencé ne suivent pas. Si son code importe
requests, installez requests dans ce script aussi. La version du script
référencé apparaît dans l'arborescence sous la forme app/script@version —
c'est la Version définie dans ses Paramètres du script.
Pour retirer une dépendance, utilisez le × de sa ligne (dans
l'arborescence ou dans le gestionnaire). Le dossier de l'alias sort du disque
et les import qui l'utilisaient échouent à la prochaine exécution.
Questions fréquentes
J'ai installé un package et l'import continue d'échouer.
Vérifiez le nom exact du module — le package Pillow s'importe comme PIL,
par exemple. Le tableau Packages installés montre le nom du package ; le
nom du module vient de sa documentation.
Pourquoi n'arrive-t-on pas à supprimer le requirements.txt ?
C'est l'un des trois fichiers protégés — c'est la liste des packages du
script, tenue par le panneau des dépendances. Pour enlever un package,
utilisez Désinstaller dans le gestionnaire de dépendances, pas le fichier.
Un collègue a modifié le script dont je dépends. Quand le mien prend-il le changement ? À l'exécution suivante : le dossier de l'alias est synchronisé avant chaque exécution de votre script.