Diese App findet und bucht alle online buchbaren service.berlin.de-Termine.
Holen Sie sich hier einen MailSlurp-API-Schlüssel.
Erstellen Sie einen Docker-Container und führen Sie ihn aus.
# Update stealth evasions
npx extract-stealth-evasions
# Build
docker build -t anmeldung-berlin .
# Book an "Anmeldung einer Wohnung" appointment
docker run
-v $( pwd ) /playwright-report:/home/pwuser/playwright-report
-v $( pwd ) /test-results:/home/pwuser/test-results
-e MAILSLURP_API_KEY= * your-api-key *
-e FORM_NAME= * your-name *
-e FORM_PHONE= * your-phone-number *
anmeldung-berlin
# Book an "Blaue Karte EU auf einen neuen Pass übertragen" appointment on/after 01 Feb 2024 & before/on 28 Feb 2024 at any time.
docker run
-v $( pwd ) /playwright-report:/home/pwuser/playwright-report
-v $( pwd ) /test-results:/home/pwuser/test-results
-e MAILSLURP_API_KEY= * your-api-key *
-e FORM_NAME= * your-name *
-e FORM_PHONE= * your-phone-number *
-e APPOINTMENT_SERVICE= " Blaue Karte EU auf einen neuen Pass übertragen "
-e APPOINTMENT_EARLIEST_DATE= " 2024-02-01 GMT "
-e APPOINTMENT_LATEST_DATE= " 2024-02-28 GMT "
anmeldung-berlin
Führen Sie das Programm über die Befehlszeile aus.
# Update stealth evasions
npx extract-stealth-evasions
# Install dependencies
npm i
# Install Chrome browser
npx playwright install chrome
# Book an "Anmeldung einer Wohnung" appointment
MAILSLURP_API_KEY= * your-api-key * FORM_NAME= * your-name * FORM_PHONE= * your-phone-number *
npm start
# Book an "Abmeldung einer Wohnung" appointment starting on/after 10:00 AM and before/at 1:00 PM on any date.
MAILSLURP_API_KEY= * your-api-key * FORM_NAME= * your-name * FORM_PHONE= * your-phone-number *
APPOINTMENT_SERVICE= " Abmeldung einer Wohnung "
APPOINTMENT_EARLIEST_TIME= " 10:00 GMT "
APPOINTMENT_LATEST_TIME= " 13:00 GMT "
npm run debug
Stellen Sie retries
von playwright.config.js auf eine hohe Anzahl ein, wenn Sie die App lokal ausführen möchten, bis eine erfolgreiche Buchung erfolgt ist. Es kann durchaus sein, dass Sie wegen Überschreitung einer Tarifgrenze gesperrt werden. Versuchen Sie in diesem Fall, PROXY_URL
auf eine Back-Connect-Proxy-URL festzulegen.
Die App wird zur Laufzeit über Umgebungsvariablen parametrisiert, deren Standardwerte (manchmal null
) im Playwright-Test definiert sind
Für die Terminvereinbarung gelten folgende Parameter:
Umgebungsvariable | Parameterstandard | Beschreibung |
---|---|---|
MAILSLURP_API_KEY | null | API-Schlüssel für den MailSlurp-Dienst. [Erforderlich] |
MAILSLURP_INBOX_ID | null | Posteingangs-ID für den MailSlurp-Dienst. Verwenden Sie diese Option, um die Erstellung vieler MailSlurp-Posteingänge zu vermeiden. |
FORM_NAME | null | Ihr Name. [Erforderlich] |
FORM_PHONE | null | Ihre Telefonnummer. [Erforderlich] |
FORM_NOTE | null | Ihr Hinweis für das Amt bei Ihrer Buchung. |
FORM_TAKE_SURVEY | "false" | Wenn Sie an der Umfrage des Amtes teilnehmen möchten. |
APPOINTMENT_SERVICE | "Anmeldung einer Wohnung" | Name des Termintyps. |
APPOINTMENT_LOCATIONS | null | Durch Kommas getrennte Ortsnamen für Termine. |
APPOINTMENT_EARLIEST_DATE | "1970-01-01 GMT" | Frühester Termin für einen Termin. |
APPOINTMENT_LATEST_DATE | "2069-12-31 GMT" | Spätester Termin für die Terminvereinbarung. |
APPOINTMENT_EARLIEST_TIME | "00:00 GMT" | Frühester Zeitpunkt für einen Termin. |
APPOINTMENT_LATEST_TIME | "23:59 GMT" | Späteste Terminvereinbarung. |
Variable | Standard | Beschreibung |
---|---|---|
LOGLEVEL | "Info" | Auf „debug“ setzen, um Standardausgabe zu erhalten. |
CONCURRENCY | „16“ | Maximale Anzahl gleichzeitiger Seiten. |
PROXY_URL | undefined | Verstecken Sie Ihre IP mit einem Back-Connect-Proxy. |
MAILSLURP_API_KEY= * your-api-key * FORM_NAME= * your-name * FORM_PHONE= * your-phone-number *
npm run debug
playwright-report enthält eine oder zwei .html-Dateien, die den Text der E-Mails darstellen, die während des Buchungsvorgangs eingehen. Außerdem gibt es eine .ics-Datei, die Sie Ihrem Kalender hinzufügen können. Überprüfen Sie Ihren MailSlurp-E-Mail-Posteingang auf die Terminbestätigungen.
npx playwright show-report
Wenn Sie vorhaben, zum Projekt beizutragen, installieren Sie Entwicklungsabhängigkeiten und verwenden Sie eslint
bzw. prettier
für Linting bzw. Formatierung.
npm i --include=dev
npx eslint --fix tests/ src/ playwright.config.js
npx prettier -w tests/ src/ playwright.config.js