Vaccipy
Automatisierte Impfterminbuchung für www.impfterminservice.de
Install / Use
/learn @timreibe/VaccipyREADME
Danke, Ende.
Wow, was für ein Jahr. Angefangen im März als privates Projekt für Freunde und Familie, wurden unsere Releases bis heute (Sonntag, 17.10.2021) knapp 40.000 Mal gedownloadet und unglaubliche 6.465 € für für Ärzte ohne Grenzen gesammelt.
Ende September haben die letzten Impfzentren geschlossen und die Seite des Impftermin-Services ist zu einer Landingpage mit Danksagungen geschrumpft. Damit ist unser Dienst getan und ich möchte ebenfalls ein großes Dankeschön an alle aussprechen, die sich an
vaccipybeteiligten. Persönlich war das mein erstes Open-Source-Projekt, an dem ich so richtig mitgearbeitet habe. Ich konnte viel lernen und es hat mir sehr Spaß gemacht, mit euch gemeinsam an Lösungen zu tüfteln. Hoffentlich konntet ihr ebenfalls etwas für euch mitnehmen - und wenn es nur ein Impftermin war.Habt eine gute Zeit. Danke, Ende.
</br></br></br>
<img width="30px" src="images/spritze.ico"> vaccipy <img width="30px" src="images/spritze.ico">
Automatisierte Impfterminbuchung auf www.impfterminservice.de.
Disclaimer
vaccipygarantiert dir keinen Impftermin, sondern dient lediglich als Unterstützung bei der Suche und Buchung.Ebenso stellt ein Termin keine Berechtigung zur Impfung dar. Bitte die aktuellen Impfbestimmungen beachten.
Features
- Automatisches Suchen und Buchen von Impfterminen
- Suche bei mehreren Impfzentren gleichzeitig
- Warteschlange umgehen
- Dauerhaft Vermittlungscodes generieren - egal wo, egal für wen!
- Programmoberfläche (GUI) für einfache Bedienung
Downloads
⚠️ Google Chrome muss auf dem PC installiert sein (Windows, Mac und Linux)
GUI Version (mit Programmoberfläche) [Funktionalitäten: Terminsuche]
<a href="https://github.com/iamnotturner/vaccipy/releases/latest/download/vaccipy_gui_installer.exe"> <img width="60" height="50" src="https://upload.wikimedia.org/wikipedia/de/thumb/c/c2/Microsoft_Windows_7_logo.svg/2000px-Microsoft_Windows_7_logo.svg.png"> </a>CLI Version (Kommandozeile) [Funktionalitäten: Terminsuche und Impf-Codes generieren]
<a href="https://github.com/iamnotturner/vaccipy/releases/latest/download/vaccipy_installer.exe"> <img width="60" height="50" src="https://upload.wikimedia.org/wikipedia/de/thumb/c/c2/Microsoft_Windows_7_logo.svg/2000px-Microsoft_Windows_7_logo.svg.png"> </a> <a href="https://github.com/iamnotturner/vaccipy/releases/latest/download/vaccipy-ubuntu.zip"> <img width="90" heigth="30" src=https://logos-world.net/wp-content/uploads/2020/11/Ubuntu-Emblem.png> </a></br></br>Probleme beim Ausführen des Windows-Installers?
Hier kannst du dir das Projekt (GUI) komprimiert als .zip herunterladen.
Hier kannst du dir das Projekt (CLI) komprimiert als .zip herunterladen.
MacOS
Für die Ausführung auf MacOS gibt es bisher noch kein Build, also keine Datei, die man einfach ausführen kann.
Um vaccipy auf dem Mac auszuführen, musst du den Source Code von vaccipy als .zip herunterladen und die notwendigen Requirements installieren. Anschließend kann das Programm im Terminal oder in einer beliebigen Python Entwicklungsumgebung ausgeführt werden.
Releases
Hier findest du den neusten Release.
Mehr Informationen, wie die Releases funktionieren findest du hier.
BETA Version
Der BETA-Branch enthält neue, noch nicht final getestete Features. Hierfür gibt es keine Distribution für Windows oder Ubuntu. Sollten Fehler auftreten könnt ihr hier ein Issue erstellen.
Wir suchen Unterstützung
Themen die bei denen wir DICH brauchen könnten:
- Erstellung eines Logos: Es gibt aktuell schon ein icon. Etwas ähnliches/passendes mit Schriftzug wäre super!
- Code-Signing und Implementierung eines Updaters: Issue Link
- EIGENE IDEEN!
Ausgangssituation
Unsere Großeltern möchten sich gerne impfen lassen, aber telefonisch unter 116117 kommen sie nicht durch und das Internet ist auch noch immer irgendwie Neuland. Jetzt kommt es zum Konflikt: einerseits möchte man natürlich gerne bei der Terminbuchung helfen, andererseits hat man aber auch keine Lust, deshalb nun den ganzen Tag vor dem Computer zu hocken und die Seite zu aktualisieren...
Wie funktioniert vaccipy?
vaccipy imitiert die manuelle Terminsuche und -buchung im Browser und führt die Anfragen automatisch aus.
Zunächst trägst du deinen "Vermittlungscode" (Beispiel: A1B2-C3D4-E5F6), die PLZ deines Impfzentrums
und deine Daten (Anschrift, Telefon, Mail) ein, die bei der Terminbuchung angegeben werden sollen.
Du wirst zur Eingabe aufgefordert und deine Daten werden in der Datei ./data/kontaktdaten.json gespeichert.
Nachfolgend werden die zwei Grundfunktionalitäten von vaccipy kurz beschrieben.
[1] Automatisierte Terminbuchung
Du benötigst
Die folgenden Daten werden beim Programmstart benötigt:
- Ein Vermittlungscode
- PLZ's eines oderer mehrerer Impfzentren
- Kontaktdaten
- Anrede
- Vorname
- Nachname
- Straße
- Hausnummer
- PLZ des Wohnorts
- Wohnort
- Telefonnummer
- Mailadresse
Ablauf
vaccipy übernimmt für dich die Suche und Buchung eines Impftermin auf www.impfterminservice.de.
Dazu musst du deinen Vermittlungscode, die PLZ's deiner gewählten Impfzentren und deine Daten beim Start des Tools eintragen. Anschließend beginnt vaccipy
die Suche und fragt in regelmäßigen Abständen (alle 60 Sekunden) verfügbare Termine in den gewählten Impfzentren ab.
Sobald ein Termin verfügbar ist, wird dieser direkt mit den Anfangs eingegeben Daten gebucht und die Suche beendet. Nach erfolgreicher Buchung erhältst du eine Bestätigungsmail vom Impfterminservice und kannst die Termine auch direkt unter www.impfterminservice.de einsehen (Bundesland wählen > Impfzentrum wählen > Buchung verwalten).
Sollte der gebuchte Termin nicht passen, kannst du ihn einfach wieder stornieren und erneut die Suche beginnen.
Eine genauere Beschreibung des Prozesses findest du im Abschnitt Workflow.
[2] Code generieren
Du benötigst
Die folgenden Daten werden beim Programmstart benötigt:
- Mailadresse
- Telefonnummer
- PLZ des gewünschten Impfzentrums
Ablauf
vaccipy kann neben der Terminbuchung dir auch einen Vermittlungscode generieren - dauerhaft, für jede Person, in jedem Impfzentrum.
Dazu musst du deine Mailadresse, deine Telefonnummer und die PLZ des gewünschten Impfzentrums eintragen. Anschließend fragt vaccipy einen Vermittlungscode
an und du erhältst eine SMS mit einem Bestätigungscode. Diesen Bestätigungscode kannst du anschließend im Tool eintragen. Der Vermittlungscode wird dir
anschließend per Mail zugesendet.
Es ist wichtig, dass du den Code entsprechend deiner Altersgruppe auswählst, ansonsten wird dir der Termin vor Ort abgesagt. Der Code wird auf www.impfterminservice.de generiert und ist gültig.
Was passiert mit meinen Daten?
Deine Daten werden lokal, also nur bei dir auf dem Computer, in der Datei ./kontaktdaten.json gespeichert.
Beim nächsten Start kannst du deine Daten direkt laden und musst sie nicht erneut eintragen.
Workflow
<img src="https://github.com/iamnotturner/vaccipy/blob/master/images/workflow.png">
vaccipynutzt die selben Endpunkte zur Terminbuchung wie dein Browser.
- Abruf aller Impfzentren und abgleich, ob für die eingetragene PLZ ein Impfzentrum existiert
- Abruf der Impfstoffe, die im gewählten Impfzentrum verfügbar sind
- Cookies generieren
Zur Terminbuchung werden Cookies benötigt (
bm_sz), die im Browser automatisch erzeugt werden. Damit wir diese auch im Script haben, wird zu Beginn eine Chrome-Instanz (im Prinzip ein separates Chrome-Fenster) geöffnet und eine Unterseite des Impfterminservices aufgerufen. Anschließend werden die Cookies extrahiert und im Script aufgenommen.Sollte die Warteschlange aktiv sein, wird diese übersprungen.
- Mit dem Code "einloggen", im Browser ist das der Schritt: Impfzentrum auswählen und Vermittlungscode eintragen
Das Einloggen im Script erfolgt lediglich, um eine Übersicht über
