Patrick Hirschi

Data Enthusiast

Software Engineer

Tech Lead

Patrick Hirschi

Data Enthusiast

Software Engineer

Tech Lead

Blog Post

WhatsApp Nachrichten mit Python versenden

23. Mai 2022 Data, Technologie
WhatsApp Nachrichten mit Python versenden

Für viele Programmierprojekte kann es hilfreich sein, wenn man Zwischenergebnisse, Status-Nachrichten oder sonstige Mitteilungen direkt an ein Smartphone übermitteln kann. Es gibt diverse Third-Party Libraries die man dafür nutzen kann, allerdings basieren diese oft auf kostenpflichtigen Dienstleistungen für z.B. SMTP Server (Mail-Versand), Messaging Dienste (SMS) oder andere.

Glücklicherweise gibt es auch hier eine kostenlose Variante. Mit dem Modul pywhatkit (https://pypi.org/project/pywhatkit/) kann man Whatsapp ganz einfach automatisieren. Damit das funktioniert, muss das Gerät wo der Python-Code läuft über WhatsappWeb mit dem privaten Whatsapp Konto verbunden werden. Die nötigen Schritte sollen in diesem Artikel kurz beschrieben werden.

WhatsappWeb verbinden mit dem privaten Whatsapp Konto

  1. WhatsappWeb Website öffnen: https://web.whatsapp.com/
  2. WhatsApp auf dem Smartphone öffnen
  3. In WhatsApp unter „Einstellungen – Verknüpfte Geräte – Gerät hinzufügen“
  4. QR Code der WhatsApp Web Seite scannen
  5. Warten bis die Verbindung aufgebaut wurde

Der Browser bleibt so verbunden mit der Smartphone App. Falls diese Verbindung aufgehoben werden soll, so kann dies jederzeit unter „Einstellungen – Verknüpfte Geräte“ wieder gestoppt werden.

Installation pywhatkit

Die Installation ist sehr simpel über die Kommandozeile mit dem folgenden Befehl zu erreichen.

python3 -m pip install pywhatkit

Nachrichtenversand mit pywhatkit

Versand an eine WhatsApp Gruppe

Um Nachrichten an eine Gruppe zu versenden muss in WhatsApp zuerst in den Gruppeneinstellungen die Gruppen-ID herausgefunden werden. Dazu wählt man in den Gruppeneinstellungen „Mit Link zur Gruppe einladen“. Die ID am Ende der angezeigten URL (gelb markiert im Bild) ist die Gruppen-ID:

WhatsApp Gruppen-ID

Es braucht keine weiteren Konfigurationsschritte und man kann nun mit nur einer Zeile Code eine Nachricht absetzen.

import pywhatkit

# WhatsApp Nachricht "Hello World!" an die Gruppe mit ID <<GRUPPEN-ID>> um 12:10 Uhr, 
# dann soll 10 Sekunden gewartet werden 
# und nach weiteren 5 Sekunden soll WhatsappWeb geschlossen werden.
pywhatkit.sendwhatmsg_to_group("<<GRUPPEN-ID>>", "Hello World!", 12, 10, 10, 5)

# WhatsApp Nachricht "Hello World!" nach 10 Sekunden Wartezeit an die Gruppe mit ID <<GRUPPEN-ID>> 
# und nach weiteren 5 Sekunden soll WhatsappWeb wieder geschlossen werden.
pywhatkit.sendwhatmsg_to_group_instantly("AB123CDEFGHijklmn", "Hey All!", 10, 5)

Versand an eine Einzelperson

Die Schritte für den Nachrichtenversand an eine Person sind noch einfacher. Man kann direkt an eine Telefonnummer versenden:

import pywhatkit

# WhatsApp Nachricht "Hello World!" an die Nummer "+123456789" um 12:10 Uhr
pywhatkit.sendwhatmsg("+123456789", "Hello World!", 12, 10)

# WhatsApp Nachricht "Hello World!" an die Nummer "+123456789" um 12:10 Uhr
# 2 Sekunden danach soll WhatsappWeb geschlossen werden
pywhatkit.sendwhatmsg("+123456789", "Hello World!", 12, 10, 15, True, 2)

Logging

Im Python Projekt wird automatisch ein simples Textfile erstellt, wo die versendeten Nachrichten nochmal zurückverfolgt werden können:

pywhatkit_db.txt

Taggs:
Write a comment