Este aplicativo encontrará e agendará qualquer consulta service.berlin.de que possa ser reservada online.
Obtenha uma chave de API MailSlurp aqui.
Crie e execute o contêiner Docker.
# 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
Execute o programa na linha de comando.
# 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
Defina retries
de playwright.config.js para um número alto, se desejar executar o aplicativo localmente até que uma reserva bem-sucedida seja feita. Você pode muito bem ser bloqueado por exceder um limite de taxa. Nesse caso, tente definir PROXY_URL
como um URL de proxy de conexão reversa.
O app é parametrizado por meio de variáveis de ambiente em tempo de execução, que possuem valores padrão (às vezes null
) definidos no teste Playwright
Para marcação de consulta os parâmetros são:
Variável de ambiente | Parâmetro Padrão | Descrição |
---|---|---|
MAILSLURP_API_KEY | null | Chave API para serviço MailSlurp. [Obrigatório] |
MAILSLURP_INBOX_ID | null | ID da caixa de entrada do serviço MailSlurp. Use para evitar a criação de muitas caixas de entrada MailSlurp. |
FORM_NAME | null | Seu nome. [Obrigatório] |
FORM_PHONE | null | Seu número de telefone. [Obrigatório] |
FORM_NOTE | null | Sua nota para o valor da sua reserva. |
FORM_TAKE_SURVEY | "false" | Se você quiser fazer a pesquisa do Amt. |
APPOINTMENT_SERVICE | "Anmeldung einer Wohnung" | Nome do tipo de compromisso. |
APPOINTMENT_LOCATIONS | null | Nomes de locais separados por vírgula para agendamento. |
APPOINTMENT_EARLIEST_DATE | "1970-01-01 GMT" | Primeira data para consulta. |
APPOINTMENT_LATEST_DATE | "2069-12-31 GMT" | Última data para agendamento. |
APPOINTMENT_EARLIEST_TIME | "00:00 GMT" | Horário mais cedo para consulta. |
APPOINTMENT_LATEST_TIME | "23:59 GMT" | Último horário para consulta. |
Variável | Padrão | Descrição |
---|---|---|
LOGLEVEL | "informações" | Defina como "debug" para obter stdout. |
CONCURRENCY | "16" | Número máximo de páginas simultâneas. |
PROXY_URL | undefined | Oculte seu IP com um proxy de conexão traseira. |
MAILSLURP_API_KEY= * your-api-key * FORM_NAME= * your-name * FORM_PHONE= * your-phone-number *
npm run debug
playwright-report conterá um ou dois arquivos .html que são o corpo dos e-mails recebidos durante o processo de reserva. Haverá também um arquivo .ics para adicionar ao seu calendário. Verifique sua caixa de entrada de e-mail do MailSlurp para obter as confirmações de agendamento.
npx playwright show-report
Se você planeja contribuir com o projeto, instale dependências de desenvolvimento e use eslint
e prettier
para linting e formatação, respectivamente.
npm i --include=dev
npx eslint --fix tests/ src/ playwright.config.js
npx prettier -w tests/ src/ playwright.config.js