En raison de son faible encombrement, de son efficacité énergétique et de sa puissance de calcul raisonnable, le Raspberry Pi est un excellent serveur. Vous pouvez faire tourner un serveur multimédia Raspberry Pi à l’aide de Plex, Emby et OpenMediaVault, ou un serveur Web exécutant WordPress, Drupal, Apache ou NGINX. De même, vous pouvez créer un serveur Web Python avec un Raspberry Pi et Flask. Apprenez à créer un serveur Web Raspberry Py Python!
Qu’est-ce que Python?
Python est un langage de programmation. Il est utilisé pour créer des applications Web et des applications de bureau. Langage de programmation général, Python reste l’un des meilleurs langages de programmation pour les débutants. Combiné avec Flask, un microframework Python, vous pouvez créer votre propre serveur Web alimenté par Python.
Ce dont vous aurez besoin pour un serveur Web Raspberry Pi Python:
Coût total: 35 $ + USD. Il y a de fortes chances que vous ayez la plupart des composants de ce projet chez vous. Vous aurez besoin d’un Raspberry Pi que vous pouvez acheter pour environ 35 $ en autonome ou opter pour un kit avec Pi, boîtier, carte microSD et alimentation. Tous les logiciels et votre système d’exploitation (OS) sont gratuits.
Comment créer un serveur Web Python Raspberry Pi
Tout d’abord, ouvrez un nouveau terminal (CTRL + ALT + T) et installez Flask avec:
sudo apt-get install python3-flask
Ensuite, créez un nouveau répertoire pour ce projet:
mkdir pythonwebapp
Maintenant, changez de répertoire dans ce répertoire:
cd pythonwebapp
Dans le menu, ouvrez Python. En utilisant Fichier> Nouveau fichier, ouvrez une nouvelle fenêtre et enregistrez-la sous app.py dans le dossier de projet pythonwebapp que vous venez de créer.
Ensuite, ajoutez un exemple de code:
from flask import Flaskapp = Flask(__name__)
@app.route('/')
def index():
return 'Hello world'
if __name__ == '__main__':
app.run(debug=True, host="0.0.0.0")
Appuyez sur CTRL + S pour enregistrer, puis revenez dans une fenêtre de terminal:
python3 app.py
Cela exécute le serveur Web. Si tout s’est bien passé, vous devriez voir quelque chose de similaire à:
Running on http://0.0.0.0:5000/
Restarting with reloader
Dans un navigateur, accédez à http://127.0.0.1:5000/
et vous devriez voir un écran avec les mots « Hellow world ». Vous pouvez également utiliser http://localhost:5000/
.
Avec Python et Flask installés, vous pouvez ajouter des routes. Par exemple, ouvrez votre fichier app.py et ajoutez un exemple d’itinéraire:
@app.route('/cupofmoe')
def cupofmoe():
return 'Raspberry Pie!'
Ce que vous mettez spécifiquement ici variera. Enregistrez ce fichier et dirigez-vous vers http://127.0.0.1:5000/cupofmoe
et vous verrez le texte que vous avez entré après « retour ».
Pour encore plus de fonctionnalités, essayez d’ajouter des modèles HTML à votre serveur Raspberry Pi Python. Dans une ligne de commande, accédez à votre pythonwebapp
dossier:
cd pythonwebapp
Ensuite, créez un répertoire de modèles:
mkdir templates
Ouvrez un éditeur de texte comme Leafpad et entrez votre code HTML:
<html>
<body>
<h1>Hello world!</h1>
</body>
</html>
Enregistrez-le sous le nom index.html sous le répertoire templates sous le pythonwebapp
annuaire.
Ensuite, dirigez-vous vers votre app.py
fichier et éditez la première ligne pour qu’il importe le render_template
fonction:
from flask import Flask, render_template
Lorsque vous avez terminé, modifiez la vue d’index afin de renvoyer le modèle HTML que vous avez créé:
@app.route('/')
def index():
return render_template('index.html')
Enregistrez le fichier et rechargez http://127.0.0.1:5000/ et vous verrez quel que soit le texte de votre modèle HTML.
Vous voulez encore plus égayer votre serveur Web Python? Ajoutez du CSS! Accédez à votre pythonwebapp
annuaire:
cd pythonwebapp
Créez un répertoire nommé static:
mkdir static
Ouvrez un éditeur de texte comme Leafpad et créez un style.css
fichier dans votre répertoire statique. Dans ce fichier, ajoutez quelques CSS de base tels que:
body {
background: green;
color: black;
}
Si vous vous sentez plus créatif, vous pouvez utiliser des codes hexadécimaux au lieu de simples noms de couleurs. Lorsque vous avez terminé, enregistrez le fichier. Dirigez-vous vers votre fichier index.html et ajoutez le CSS en créant une balise head avec une balise de lien pointant vers votre feuille de style:
<html>
<head>
<link rel="stylesheet" href="https://www.raspberryme.com/static/style.css" />
</head>
<body>
<h1>Hello world!</h1>
</body>
</html>
Enregistrez ce fichier HTML, actualisez votre page Web et vous devriez voir le même texte mais avec une coloration mise à jour.
Comment créer un serveur Web Python Raspberry Pi: dernières réflexions
Dans l’ensemble, un serveur Web Python avec Flask fonctionnant sur un Raspberry Pi est ridiculement simple à créer. C’est plus facile que de faire tourner un serveur Drupal ou WordPress, et à peu près à égalité avec la création d’un serveur NGINX. Un serveur Raspberry Pi basé sur Python peut être aussi complexe ou simple que vous le souhaitez. En utilisant HTML et CSS, vous pouvez pimenter votre site et il est facile d’ajouter de nouvelles routes.
Que exécutez-vous sur votre Raspberry Pi?
-
Raspberry Pi Pico Basé sur RP2040 Compatible avec Arduino IDE, Pogrammable en C/C++ / Python/MicroPython, Kit Complet de Pi Pico pour Débutants et Ingénieur Logiciel, 46 Types d'Accessoires【Processeur RP2040】Conçu par Raspberry Pi, le RP2040 est doté d'un processeur Arm Cortex-M0+ à double cœur avec 264 Ko de RAM interne et prend en charge jusqu'à 16 Mo de Flash hors puce. Une large gamme d'options d'E/S flexibles comprend I2C, SPI et, de manière unique, les E/S programmables (PIO). Ceux-ci prennent en charge une infinité d'applications possibles pour ce petit package abordable. 【Accessoires Fournis】On fournit multiples composants(46 types) pour répondre à vos besoins, tels que des lignes de données, des résistances, des condensateur et des capteurs: capteur de température, capteur de gaz, capteur de couleur, capteur de flamme, capteur de liquide, capteur d'humidité et capteur de son, etc. Vous pouvez réaliser des petits expériences facilement chez vous avec notre kit de pico. 【Rapport prix-qualité】Raspberry Pi Pico est une carte minuscule, rapide et polyvalente construite à l'aide de RP2040, une toute nouvelle puce de microcontrôleur conçue par Raspberry Pi. Il est une carte micro-contrôleur à prix bas et mais avec de hautes performances en équipant d'interfaces numériques flexibles. 【Programmable】Programmable en C/C++ SDK et MicroPython, Pico est adaptable à une vaste gamme d'applications et de niveaux de compétence, et la mise en route est aussi simple que de glisser-déposer un fichier. 【Broches GPIO multifonctionnelles】Le raspberry pi pico a 26 broches GPIO multifonctionnelles, 2 × SPI, 2 × I2C, 2 × UART, 3 × ADC 12 bits, 16 × canaux PWM contrôlables. Les utilisateurs plus expérimentés peuvent profiter du riche ensemble de périphériques de Raspberry Pi Pico, y compris SPI, I2C et huit machines d'état d'E/S programmables (PIO) pour une prise en charge personnalisée des périphériques.
-
Freenove Ultimate Starter Kit for Raspberry Pi 5 4 B 3 B+ 400, 558-Page Detailed Tutorial, Python C Java Scratch Code, 223 Items, 104 Projects4 programming languages -> Python (compatible with 2&3), C, Java and Scratch. 558-page detailed tutorial (including basic electronics knowledge) -> The download link can be found on the product box. (No paper tutorial.) 223 items for 104 interesting projects -> Each project has circuit diagrams and verified code with detailed explanations. Compatible models -> Raspberry Pi 5 / 400 / 4B / 3B+ / 3B / 3A+ / 2B / 1B+ / 1A+ / Zero W / Zero. (NOT included in this kit.) Get support -> Our technical support team is always ready to answer your questions.
-
Freenove Raspberry Pi Pico W (Compatible with Arduino IDE) Pre-Soldered Header, Development Board, Python C Java Code, Detailed Tutorial, Example ProjectsRaspberry Pi Pico W -> A tiny, fast, and versatile board built using dual-core processor with wireless LAN. Comes with pinout card and stickers. 3 tutorials with MicroPython, C and Processing (Java) code -> The download link can be found on the product box. (No paper tutorial.) Example projects -> Each project has circuit diagrams and verified code with detailed explanations. (Need extra items.) Easy to use -> Just connect it to your computer (installed IDE) with a USB cable to program it. Get support -> Our technical support team is always ready to answer your questions.