Installation - Préembule

Logiciels auxiliaires et environnements virtuel

Dans ce projet, vous DEVEZ utiliser Python 3. Il vous faut au moins la version 3.6 de Python. Vous pouvez vérifier votre version de python à tout moment avec la commande python --version.

En plus de Python et Flask, les logiciels suivants seront installés automatiquement sur votre machine:

  • Werkzeug implémente WSGI, l'interface standard Python entre l'application et le serveur.

  • Jinja est un langage de modèle qui gère le rendu des pages de votre application serveur.

  • MarkupSafe vient avec Jinja. Il échappe les données en entrée des utilisateurs dans les modèles Jinja pour éviter l'attaque par injection.

  • ItsDangerous permet de signer les données et vérifier leur intégrité. C'est utilisé pour protéger les cookies des sessions Flask.

  • Click est un framework pour écrire des applications en ligne de commande. Il est utilisé pour la ligne de commande "flask".

Nous vous conseillons d'utiliser un environnement virtuel pour gérer les dépendances pour votre projet, tant en développement qu'en production. Un environnement virtuel est un groupe indépendant de bibliothèques Python. Il est conseillé d'en créer un pour chacun de vos projets. Ainsi, les paquets installés pour un projet n'affecteront pas les autres projets ou les packages du système d'exploitation.

Note

Quel problème un environnement virtuel résout-il ? Plus vous avez de projets Python, plus il est probable que vous deviez travailler avec différentes versions des bibliothèques Python, ou même Python lui-même. Les bibliothèques plus récentes pour un projet peuvent casser la compatibilité dans un autre projet. Un environnement virtuel permet de ne pas ce soucier de ce genre de problème.

Python 3 est fourni avec le module venv pour créer des environnements virtuels.

Note

Notez que si vous utilisez WSL, vous devez suivre les instructions pour Linux et non pour Windows.

Installation de Flask

Avant de commencer, nous vous rappelons que vous DEVEZ utiliser Python 3. Voici les étapes pour partir sur de bonnes bases pour votre projet:

  1. Créer un environnement

    Créez un dossier pour votre projet avec et un dossier venv à l'intérieur:

    Sur Mac/Linux (y compris WSL):

    $ mkdir base-project
    $ cd base-project
    $ python3 -m venv venv
    

    Sur Windows (pas WSL, interdit à partir de 2025!):

    > mkdir base-project
    > cd base-project
    > python -m venv venv
    

    Attention, il est possible que la commande python ne soit pas accessible sur votre Windows. Dans ce cas, essayez de la remplacer par python3. Si ça ne fonctionne pas, voyez les aides ci-dessous.

    Le resultat des commandes ci-dessus est la création d'un dossier base-project contenant lui-même un dossier venv. Dans le premier, vous mettrez tous les fichiers se rapportant au site que vous allez créer. Ne touchez pas au second.

  2. Activer l'environnement

    Avant de commencer votre projet, activez l'environnement correspondant:

    Sur Mac/Linux/WSL

    $ . venv/bin/activate
    

    Sur Windows:

    > venv\Scripts\activate
    

    Votre commande shell changera avec le nom de l'environnement (venv).

  3. Installer Flask

    Dans l'environnement activé, utilisez la commande suivante pour installer Flask:

    $ pip install flask
    

    Flask est maintenant installé. Vous pouvez commencer le tutoriel.

  4. Version de Flask

    Nous utiliserons ici la dernière version de Flask. Vérifiez la version de Flask avec :

    $ flask --version
    

Allez à la section tutoriel.

F.A.Q. pour Windows

Cette section est gardée pour référence, car vous ne pouvez pas utilisez Windows directement dans ce cours. Vous devez utiliser WSL, comme discuté au précédent TP. Nous gardons cette F.A.Q. comme référence pour des étudiants qui voudraient essayer en dehors du cours, et pour décourager les étudiants d'essayer de faire ce cours dans Windows directement.

'python' n’est pas reconnu en tant que commande interne

Si vous n'avez pas coché "Add Python 3.* to PATH" lors de l'installation, alors vous ne pourrez pas taper "python" dans votre ligne de commande, car le système ne saura pas où trouver python. D'abord, remarquez qu'il est utile de lire les consignes correctement, puisque c'est indiqué visuellement dans le tutorial d'installation python qui vous est proposé.

Pour confirmer le problème, essayez de lancer directement python.exe en trouvant le chemin complet. Il est en général installé dans %LOCALAPPDATA%\Programs\Python\. Naviguez vers ce dossier en le tapant dans la barre d'adresse de l'explorateur Windows, puis trouvez le nom du dossier qui dépend de la version de Python, par exemple Python311. Le chemin complet dans ce cas sera %LOCALAPPDATA%\Programs\Python\Python311\python.exe.

Essayez de lancer python en ligne de commande en utilisant ce chemin complet:

$ %LOCALAPPDATA%\Programs\Python\Python311\python.exe --version

Si cela fonctionne, le problème est bien la variable d'environnement et continuez. Sinon demandez de l'aide à votre assistant.

Pour ajouter la variable d'environnement:

  • Appuyer sur la touche Windows + R

  • Taper "sysdm.cpl" et cliquer sur OK

  • Aller dans "Paramètres système avancés"

  • Cliquer sur "Variables d'environnement"

  • Trouver "Path" ou "PATH" dans la liste des variables utilisateur et sélectionner la ligne.

  • Faites "nouveau" et ajoutez le chemin trouvé ci-dessus sans la partie "python.exe", c'est-à-dire seulement le chemin vers le dossier qui le contient.

Flask est introuvable

Il est possible que sur Windows la commande "flask" soit introuvable. Dans ce cas, utilisez python -m flask à la place. Il arrive également qu'une version embarquée de python, par exemple avec Inkscape crée des conflits. Dans ce cas, utilisez le chemin complet vers python, quelque chose comme C:\Users\tom\AppData\Local\Programs\Python\Python311\python.exe -m flask --version, ou changez l'ordre des variables d'environnement comme indiqué ci-dessus.