Skip to content

13. Annexes

13.1. Installation de Python

[Python] se télécharge sur python.org/downloads. Les exemples et l'étude de cas demandent la version 3.12 ou une plus récente ; ils ont été testés avec la version 3.13.

Sous [Windows], l'installateur propose, sur son premier écran, la case « Add python.exe to PATH » : il faut la cocher. La commande [python] est alors disponible dans toutes les consoles. L'installateur installe aussi le lanceur [py], qui permet de choisir une version quand plusieurs sont installées ([py -3.13]). On peut aussi utiliser le gestionnaire de paquets [winget] :

winget install Python.Python.3.13

Sous [macOS], on utilise l'installateur [.pkg] de la même page, ou le gestionnaire de paquets [Homebrew] ([brew install python@3.13]). Sous [Linux], [Python] est généralement déjà installé ; on vérifie sa version, et l'on installe si besoin le module [venv], qui crée les environnements virtuels (sous [Ubuntu] : [sudo apt install python3-venv]). Sous [macOS] et [Linux], la commande s'appelle souvent [python3] (et [pip3]) : c'est elle qu'on utilise pour créer l'environnement virtuel. Une fois l'environnement activé, [python] et [pip] désignent ceux de l'environnement.

On vérifie l'installation dans une nouvelle console ([PowerShell], invite de commandes ou terminal) :

python --version

qui doit afficher un numéro de version égal ou supérieur à 3.12 (par exemple [Python 3.13.7]). Avec une version plus ancienne, l'étude de cas s'arrête au démarrage par une erreur de syntaxe (cf. « Les problèmes fréquents »).

13.2. Environnements virtuels et pip

Un environnement virtuel est un dossier (ici [.venv]) qui contient une copie de l'interpréteur [Python] et les bibliothèques d'un projet. Chaque projet a ainsi les siennes, dans les versions qui lui conviennent. Le dossier [exemples] a son environnement, partagé par les 28 exemples ; l'étude de cas a le sien.

Les commandes utiles, sous [Windows] (sous [Linux] et [macOS], [source .venv/bin/activate] pour l'activation) :

1
2
3
4
5
python -m venv .venv               # créer l'environnement (une fois)
.venv\Scripts\activate             # l'activer (dans chaque nouveau terminal)
pip install -r requirements.txt    # installer les bibliothèques du projet
pip list                           # les bibliothèques installées
deactivate                         # désactiver l'environnement

[pip] télécharge les bibliothèques depuis le dépôt [PyPI] (pypi.org) : il faut une connexion Internet lors de l'installation. Derrière un proxy d'entreprise, on indique le proxy par l'option [--proxy] de [pip]. L'environnement virtuel ne se copie pas d'une machine à l'autre (il contient des chemins absolus) : on le recrée, à partir du fichier [requirements.txt]. C'est pourquoi le dossier [.venv] ne fait pas partie des codes du cours.

13.3. Installation de Visual Studio Code

[Visual Studio Code] se télécharge sur code.visualstudio.com. On y ajoute l'extension Python de Microsoft (menu Affichage / Extensions, puis rechercher « Python ») : elle installe aussi [Pylance] (la complétion, la vérification des types, le signalement des erreurs) et le débogueur Python Debugger. Une extension comme Better Jinja ajoute la coloration syntaxique des vues [Jinja2] (fichiers .html qui contiennent des balises {{ }} et {% %}).

On ouvre le dossier [exemples] ou le dossier de l'étude de cas (menu Fichier / Ouvrir le dossier). L'extension détecte l'environnement virtuel [.venv] et propose de l'utiliser : il faut accepter (on peut aussi le choisir par la commande Python: Select Interpreter, touches [Ctrl-Maj-P]). Le terminal intégré (menu Terminal / Nouveau terminal) active alors de lui-même l'environnement, et permet de lancer les applications sans quitter l'éditeur. La touche [F5], dans le fichier [app.py], exécute l'application sous le contrôle du débogueur (cf. « Le mode développement »).

13.4. Installation de MySQL avec Laragon

[Laragon] (laragon.org) installe sous [Windows] un serveur [MySQL] (ou [MariaDB]) prêt à l'emploi, avec l'outil d'administration [HeidiSQL]. Après installation :

  • le bouton Démarrer tout lance le serveur [MySQL], sur le port 3306 ;
  • l'utilisateur [root] n'a pas de mot de passe : ce sont les valeurs par défaut de l'exemple 28 ([DATABASE_URL]) et de l'étude de cas ([DB_USER], [DB_PASSWORD]) ;
  • le bouton Base de données ouvre [HeidiSQL], où le menu Fichier / Exécuter un fichier SQL exécute les scripts [dbpersonnes.sql] (exemple 28) et [dbrdvmedecins2.sql] (étude de cas).

Sous [Linux] ou [macOS], on installera [MySQL] ou [MariaDB] avec le gestionnaire de paquets du système, et l'on exécutera les scripts avec le client en ligne de commande [mysql]. Le pilote [PyMySQL] fonctionne avec les deux, sans aucun réglage. Sous [Linux], le compte [root] de [MariaDB] est souvent configuré pour ne se connecter que par le compte système [root] ([sudo mysql]) : on crée alors un utilisateur pour les applications, et on l'indique dans leur configuration :

sudo mysql -e "CREATE USER 'cours'@'localhost' IDENTIFIED BY 'cours'; GRANT ALL ON *.* TO 'cours'@'localhost';"

13.5. Installation de curl

[curl] est livré avec [Windows] 10 et 11, [macOS] et la plupart des distributions [Linux]. Sous [PowerShell], il faut taper [curl.exe] et non [curl] : dans les anciennes versions de [PowerShell], [curl] est un alias d'une autre commande ([Invoke-WebRequest]), dont les options sont différentes. Dans l'invite de commandes de [Windows] ([cmd]), les guillemets d'une chaîne JSON s'écrivent [\"] (exemple 11), et une URL qui contient des [&] doit être entourée de guillemets doubles.