https://github.com/londek/info-car-sniper
Skaner i auto‑przebooker terminów egzaminów praktycznych WORD (Info‑Car)
https://github.com/londek/info-car-sniper
driving info-car python textual
Last synced: 9 months ago
JSON representation
Skaner i auto‑przebooker terminów egzaminów praktycznych WORD (Info‑Car)
- Host: GitHub
- URL: https://github.com/londek/info-car-sniper
- Owner: londek
- License: gpl-3.0
- Created: 2025-09-03T08:49:03.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2025-09-05T09:21:52.000Z (9 months ago)
- Last Synced: 2025-09-05T10:26:00.632Z (9 months ago)
- Topics: driving, info-car, python, textual
- Language: Python
- Homepage:
- Size: 140 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.en.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Info‑Car Sniper
Scanner and auto‑rebooker for practical exam slots at WORD (Info‑Car)
👉 Note: the app currently only reschedules existing exam bookings — it does not book from scratch.
💡 Want full booking support? Contributions are welcome! 🙏✨
✅ Proven in practice: this tool helped reduce my real practical exam wait by 24 days via auto‑rescheduling.
An intuitive terminal app that:
- logs into Info‑Car,
- periodically scans slots and picks the earliest within your date/time window,
- automatically rebooks your reservation to a better slot,
- can scan using multiple accounts in rotation (faster, low cost),
- and does all that for about $1.
## ✨ Key features
- Automatic Turnstile solving (CapMonster) with usage counters and estimated cost
- Round‑robin scanning across accounts: each account is checked roughly every ~15s;
with multiple accounts you get a check every few seconds overall (e.g., 3 accounts ≈ one check ~every 5s)
- Selects the earliest slot that matches your date/time criteria
- One‑click rebook from the TUI
- Live stats in the UI:
- total checks
- earliest slot ever found
- current earliest slot
- last found slot
- Turnstile usage and estimated cost
- Settings persisted in `config.json` (login, password, CapMonster key, date & time range)
- Proxy support — just add a `proxies.txt` file (one line = one HTTP(S) proxy URL)
- Handy TUI keybindings:
- Enter — confirm fields and log in
- Tab / ↑ ↓ — move between fields
- Ctrl+l — back to login screen
- Ctrl+c — quit the app
## 👀 Preview
Login • Main panel (scanning + stats)
## 📋 Requirements
- Python 3.10 or newer
- Info‑Car account with an active practical exam reservation
- API key for [CapMonster](https://capmonster.cloud/en)
- (Optional) proxy list in `proxies.txt`
## 🛠️ Installation & run
Commands below are ready to paste into zsh on Linux.
```bash
# 1) (Optional) create and activate a virtual environment
python3 -m venv .venv
source .venv/bin/activate
# 2) Install dependencies
pip install -r requirements.txt
# 3) Run the TUI app
python main.py
```
On the first screen, enter:
- your Info‑Car email and password,
- your CapMonster key,
- the date range (YYYY‑MM‑DD) and time range (HH:MM).
The app will save these to `config.json` so subsequent runs are faster (auto‑login).
### 🚀 Faster scanning: multiple accounts
You can add helper accounts for scanning only (the main account still performs the rebook):
1) Create `accounts.txt` and put one account per line:
```
email@example.com:SuperPassword123!
other@example.com:Another#Password
```
2) Run the app as usual (`python main.py`).
The app scans sequentially across accounts (round‑robin): each account is checked roughly every ~15s,
and with more accounts you get a check every few seconds overall (e.g., 3 accounts ≈ one check ~every 5s). The Turnstile stats show the sum across all sessions.
If `accounts.txt` is empty or missing, the app behaves as before — uses only the main account.
### 🧪 Account creator (generator)
Built‑in tool for quickly creating and activating Info‑Car accounts via temporary email:
```bash
python account-creator.py
```
- Requires a CapMonster key (balance is checked),
- uses mail.tm for temporary mailboxes,
- automatically follows the activation link,
- appends accounts to `accounts.txt` as `email:password`.
### 🌐 (Optional) Proxy
Add a `proxies.txt` file in the project directory with a list of proxy URLs (one per line), e.g.:
```
https://user:pass@host:port
https://host2:443
```
The program will randomly use the provided proxies for requests.
## ⚖️ Legal / ethics
- The tool automates actions on a public service. Use it lawfully and in accordance with Info‑Car’s terms.
- Authors and contributors are not responsible for how you use it.
## 🛠️ Contribution
Want to help? Awesome!
- Open an issue with your proposal or send a PR right away
- Keep code readable and commits short and descriptive
- Tests and short PR descriptions are welcome
## 💙 Donations (crypto)
- BTC: `bc1qqj0q5qup8lhsgacaqrhp37gqzq3xph2595dh5u`
- LTC: `ltc1qw03g3enqgkhc0px3lrs47xz3y8g087rvu90nzg`
- ETH: `0x479D4535b8f3a8A83338525FD7dEC1CBbAeED7eD`
- USDC (ERC20): `0x479D4535b8f3a8A83338525FD7dEC1CBbAeED7eD`
Thanks for your support! 🙌