Maison > développement back-end > Tutoriel Python > Création d'un tableau de bord météo évolutif en temps réel avec Python, l'API OpenWeather et AWS S3

Création d'un tableau de bord météo évolutif en temps réel avec Python, l'API OpenWeather et AWS S3

Mary-Kate Olsen
Libérer: 2025-01-18 20:24:17
original
700 Les gens l'ont consulté

Ce document décrit un projet Python qui récupère les données météorologiques et les stocke dans un compartiment AWS S3. Reformulons-le pour plus de clarté et une meilleure fluidité, en conservant la langue d'origine et les positions de l'image.

Building a Scalable Real-Time Weather Dashboard with Python, OpenWeather API, and AWS S3

Projet de tableau de bord météo

Ce projet Python, le Weather Dashboard, récupère les données météorologiques via l'API OpenWeather et les télécharge en toute sécurité dans un compartiment AWS S3. Il fournit une interface simple pour visualiser les informations météorologiques de différentes villes et enregistre les résultats de manière transparente dans le cloud. L'évolutivité du projet est améliorée en tirant parti d'AWS S3 pour le stockage des données.

Table des matières

  • Prérequis
  • Aperçu du projet
  • Fonctionnalité de base
  • Technologies utilisées
  • Configuration du projet
  • Configuration de l'environnement
  • Exécuter l'application

Prérequis

Avant de commencer, assurez-vous d'avoir :

  1. Python 3.x : Téléchargez et installez depuis le site officiel de Python.
  2. Compte AWS : Créez un compte pour accéder à AWS S3.
  3. Clé API OpenWeather : Obtenez une clé sur le site Web OpenWeather.
  4. AWS CLI : Téléchargez et installez l'interface de ligne de commande AWS.
  5. Maîtrise de Python : Compréhension de base des scripts Python, de l'interaction API et des variables d'environnement.
  6. Éditeur de code/IDE : Utilisez VS Code, PyCharm ou un environnement de développement similaire.
  7. Git : Installez Git pour le contrôle de version (disponible sur le site Web de Git).

Aperçu du projet

Ce tableau de bord météo utilise l'API OpenWeather pour récupérer des informations météorologiques pour des emplacements spécifiés. Ces données sont ensuite téléchargées dans un compartiment AWS S3 pour un accès à distance pratique. La conception du système permet aux utilisateurs de saisir différentes villes et de recevoir des mises à jour météorologiques en temps réel.

Fonctionnalité de base

  • Récupère les données météorologiques de l'API OpenWeather.
  • Télécharge les données météorologiques dans un compartiment AWS S3.
  • Gère en toute sécurité les clés API et les informations d'identification AWS à l'aide de variables d'environnement.

Technologies utilisées

Le projet utilise :

  • Python 3.x : Le langage de programmation principal.
  • boto3 : Le SDK AWS pour Python, permettant l'interaction avec AWS S3.
  • python-dotenv : Facilite le stockage sécurisé et la récupération des variables d'environnement à partir d'un .env fichier.
  • requêtes : Une bibliothèque HTTP simplifiée pour effectuer des appels API vers OpenWeather.
  • AWS CLI : L'interface de ligne de commande pour la gestion des services AWS (y compris la configuration des clés et la gestion du compartiment S3).

Configuration du projet

Suivez ces étapes pour mettre en place le projet localement :

1. Créer une structure de répertoire de projet

<code>weather-dashboard/
├── src/
│ ├── __init__.py
│ └── weather_dashboard.py
├── .env
├── tests/
├── data/
├── .gitignore
└── README.md</code>
Copier après la connexion
Copier après la connexion

Building a Scalable Real-Time Weather Dashboard with Python, OpenWeather API, and AWS S3

Créez les répertoires et fichiers à l'aide de ces commandes :

<code class="language-bash">mkdir weather_dashboard_demo
cd weather_dashboard_demo
mkdir src tests data</code>
Copier après la connexion
Copier après la connexion

Building a Scalable Real-Time Weather Dashboard with Python, OpenWeather API, and AWS S3

Building a Scalable Real-Time Weather Dashboard with Python, OpenWeather API, and AWS S3

2. Créer des fichiers

Créez les fichiers Python et de configuration nécessaires :

<code class="language-bash">touch src/__init__.py src/weather_dashboard.py
touch requirements.txt README.md .env</code>
Copier après la connexion
Copier après la connexion

Building a Scalable Real-Time Weather Dashboard with Python, OpenWeather API, and AWS S3

Building a Scalable Real-Time Weather Dashboard with Python, OpenWeather API, and AWS S3

3. Initialiser le référentiel Git

Initialisez un dépôt Git et définissez la branche principale :

<code class="language-bash">git init
git branch -M main</code>
Copier après la connexion
Copier après la connexion

Building a Scalable Real-Time Weather Dashboard with Python, OpenWeather API, and AWS S3

Building a Scalable Real-Time Weather Dashboard with Python, OpenWeather API, and AWS S3

4. Configurer .gitignore

Créez un fichier .gitignore pour exclure les fichiers inutiles :

<code class="language-bash">echo ".env" >> .gitignore
echo "__pycache__/" >> .gitignore
echo "*.zip" >> .gitignore</code>
Copier après la connexion
Copier après la connexion

Building a Scalable Real-Time Weather Dashboard with Python, OpenWeather API, and AWS S3

5. Ajouter des dépendances

Ajouter les packages requis à requirements.txt :

<code class="language-bash">echo "boto3==1.26.137" >> requirements.txt
echo "python-dotenv==1.0.0" >> requirements.txt
echo "requests==2.28.2" >> requirements.txt</code>
Copier après la connexion
Copier après la connexion

Building a Scalable Real-Time Weather Dashboard with Python, OpenWeather API, and AWS S3

Building a Scalable Real-Time Weather Dashboard with Python, OpenWeather API, and AWS S3

6. Installer les dépendances

Installer les dépendances :

<code>weather-dashboard/
├── src/
│ ├── __init__.py
│ └── weather_dashboard.py
├── .env
├── tests/
├── data/
├── .gitignore
└── README.md</code>
Copier après la connexion
Copier après la connexion

Building a Scalable Real-Time Weather Dashboard with Python, OpenWeather API, and AWS S3

Configuration de l'environnement

1. Configuration de l'AWS CLI

Configurez l'AWS CLI avec vos clés d'accès :

<code class="language-bash">mkdir weather_dashboard_demo
cd weather_dashboard_demo
mkdir src tests data</code>
Copier après la connexion
Copier après la connexion

Vous serez invité à indiquer votre ID de clé d'accès, votre clé d'accès secrète, votre région et votre format de sortie. Obtenez vos informations d'identification à partir d'AWS Management Console (IAM > Utilisateurs > Votre utilisateur > Informations d'identification de sécurité).

Vérifiez l'installation avec :

<code class="language-bash">touch src/__init__.py src/weather_dashboard.py
touch requirements.txt README.md .env</code>
Copier après la connexion
Copier après la connexion

2. Configurer .env

Créez un .env fichier contenant votre clé API et le nom du bucket :

<code class="language-bash">git init
git branch -M main</code>
Copier après la connexion
Copier après la connexion

Remplacez les espaces réservés par vos valeurs réelles.

Exécuter l'application

Voici le script Python (weather_dashboard.py) :

<code class="language-bash">echo ".env" >> .gitignore
echo "__pycache__/" >> .gitignore
echo "*.zip" >> .gitignore</code>
Copier après la connexion
Copier après la connexion

Building a Scalable Real-Time Weather Dashboard with Python, OpenWeather API, and AWS S3

1. Exécutez le script

Exécuter le script :

<code class="language-bash">echo "boto3==1.26.137" >> requirements.txt
echo "python-dotenv==1.0.0" >> requirements.txt
echo "requests==2.28.2" >> requirements.txt</code>
Copier après la connexion
Copier après la connexion

Cela récupère les données météorologiques et les télécharge dans votre compartiment S3.

2. Vérifier le compartiment S3

Accédez à votre compartiment AWS S3 pour confirmer le téléchargement. N'oubliez pas de supprimer les données par la suite pour éviter des frais inutiles.

Building a Scalable Real-Time Weather Dashboard with Python, OpenWeather API, and AWS S3

Building a Scalable Real-Time Weather Dashboard with Python, OpenWeather API, and AWS S3

Cette version révisée conserve les informations originales tout en améliorant la lisibilité et la fluidité. N'oubliez pas de remplacer les valeurs d'espace réservé par votre clé API et votre nom de compartiment réels.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal