Kostenloser Versand ab €74,95 NL

Vor 16:00 bestelt = Heute versendet

Schnelle Lieferung mit DHL

XNUMX Tage Rückgaberecht *


Land

Raspberry Pi Projekt: Wettervorhersage-Bot

Mit diesem Projekt werden Sie es schaffen Raspberry Pi 5 können Ihnen täglich einen Wetterbericht per Telegram senden. Dieser Wetterbericht enthält Informationen wie aktuelle Wetterbedingungen und Temperatur für eine von Ihnen ausgewählte Stadt. Dieses Projekt bietet eine großartige Gelegenheit zu lernen, wie man... Raspberry Pi für praktische Anwendungen und zum Kennenlernen der Python-Programmierung nutzen können. Außerdem erfahren Sie, wie Sie eine API verwenden. Es ist auch möglich, dieses Projekt mit zu erstellen Raspberry Pi 4B.

 Dieser Leitfaden behandelt: 

  • Anforderungen
  • Holen Sie sich den Telgram-Bot und den API-Schlüssel
  • Installieren Sie Python-Bibliotheken
  • Code
  • Code ausführen
  • Anfänger 40% 40%
  • 30 45-min 45% 45%
  • Kostet 105,81 € 55% 55%

Schritt 1: Lieferungen:

Schritt 2: Holen Sie sich den Telegram-Bot und den API-Schlüssel

a. Erstellen Sie einen Telegram-Bot, indem Sie den BotFather in Telegram kontaktieren.

B. Notieren Sie sich den Bot-Token, den Sie vom BotFather erhalten.

C. Registrieren Sie sich auf der OpenWeatherMap-Website und erhalten Sie einen kostenlosen API-Schlüssel

Bild eines AstroPi

Schritt 3: Python-Bibliotheken installieren

Bevor Sie den Code ausführen können, stellen Sie sicher, dass die erforderlichen Python-Bibliotheken auf Ihrem Computer installiert sind Raspberry Pi 5. Sie können diese Bibliotheken mit installieren Pip, der Python-Paketmanager. Öffnen Sie ein Terminal für Sie Raspberry Pi 5 und führen Sie die folgenden Befehle aus, um Python und Pip zu installieren:

sudo apt-get update
sudo apt-get upgrade
sudo apt install python3
sudo apt install python3-pip

Installieren Sie nun die Python-Bibliotheken

Pip Installationsanforderungen
pip installiere den Python-Telegram-Bot

Starten Sie abschließend das neu Raspberry Pi Um die Installation abzuschließen:

sudo reboot

Schritt 4: Code

Kopieren Sie den Code und fügen Sie ihn in Thonny ein. Ersetzen Sie die Platzhalter im Code (z. B. „YOUR_BOT_TOKEN“ und „YOUR_OPENWEATHERMAP_API_KEY“) durch das tatsächliche Bot-Token und den API-Schlüssel, die Sie erhalten haben.

Importanforderungen
Datum / Uhrzeit importieren
aus Telegrammimport Bot
Importzeit
Asynchron importieren

 

 

# Ersetzen Sie „YOUR_BOT_TOKEN“ durch Ihr eigenes Telegram-Bot-Token
bot_token = 'YOUR_BOT_TOKEN_HERE'

# Ersetzen Sie „CITY“ durch den Namen der Stadt, für die Sie das Wetter abrufen möchten
Stadt = 'Amersfoort'

# Ersetzen Sie „YOUR_OPENWEATHERMAP_API_KEY“ durch Ihren eigenen kostenlosen OpenWeatherMap-API-Schlüssel
api_key = 'YOUR_OPENWEATHERMAP_API_KEY_HERE'

 

# Funktion zum Abrufen der Wettervorhersage
async def get_weather():
    base_url = 'http://api.openweathermap.org/data/2.5/weather'
    Parameter = {
        'q': Stadt,
        'appid': api_key,

        'units': 'metric' # Verwenden Sie 'imperial' für Fahrenheit anstelle von Celsius
     }
    Antwort = Anfragen.get(base_url, params=params)
    Weather_data = Response.json()

    wenn Response.status_code == 200:
        Weather_description = Weather_data['weather'][0]['description']
        Temperatur = Weather_data['main']['temp']
        return f'Das Wetter in {city} heute: {weather_description}, Temperatur: {temperatur}°C'
    sonst:
        return 'Die Wettervorhersage konnte nicht abgerufen werden.'

 

 

# Funktion zum Senden einer Telegram-Nachricht
async def send_telegram_message(message):
    bot = Bot(token=bot_token)
    chat_id = 'YOUR_CHAT_ID_HERE' # Ersetzen Sie dies durch Ihre eigene Chat-ID

    warte auf bot.send_message(chat_id=chat_id, text=message)

    # Code kontinuierlich ausführen

 

 

async def main():

    während wahr:
        now = datetime.datetime.now()
        Wenn now.hour == 14 und now.minute == 5: # Ersetzen Sie dies durch Ihre gewünschte Zeit
            Weather_report = warte auf get_weather()
            warte auf send_telegram_message(weather_report)

            # Bitte warten Sie einen Moment, um zu verhindern, dass mehrere Nachrichten schnell hintereinander gesendet werden
            wait asyncio.sleep(60) # 60 Sekunden warten (ggf. anpassen)
        sonst:
            # Warten Sie einen Moment, bevor die Uhrzeit erneut überprüft wird
            wait asyncio.sleep(60) # 60 Sekunden warten (ggf. anpassen)

 

 

if __name__ == „__main__“:
    asyncio.run(main())

Schritt 5: Code ausführen

a. Speichern Sie das Python-Skript unter einem geeigneten Namen, z. B weer_project.py.

B. Navigieren Sie zu dem Ordner, in dem Sie das Python-Skript gespeichert haben.

C. Führen Sie das Skript mit dem folgenden Befehl aus:

Python Weather_Project.py

Das Skript startet und prüft jede Minute, ob es Zeit ist, die Wettervorhersage abzurufen und an Ihren Telegram-Chat zu senden. Um zu testen, ob es richtig funktioniert, können Sie die Zeit auf eine Zeit einstellen, die 2 Minuten entfernt liegt, und dann den Code ausführen.

 Und das war es! Hat es nicht geklappt? Schauen Sie sich die vorherigen Schritte noch einmal an, um zu sehen, was schief gelaufen ist. Hat es funktioniert? Dann schauen Sie sich unsere Projekte an!

Die Bewertung von www.elektronicavoorjou.nl bei WebwinkelKeur-Bewertungen ist 9.3 / 10 basierend auf 5023 Bewertungen.