| docs | ||
| web | ||
| .gitignore | ||
| .python-version | ||
| account_manager.py | ||
| accounts_example.txt | ||
| age_verification.py | ||
| auto_all_in_one_gui.py | ||
| auto_bind_card.py | ||
| bit_api.py | ||
| bit_playwright.py | ||
| browser_manager.py | ||
| cards_example.txt | ||
| CLAUDE.md | ||
| create_window.py | ||
| create_window_gui.py | ||
| database.py | ||
| google_recovery.py | ||
| LICENSE | ||
| main.py | ||
| migrate_txt_to_db.py | ||
| pyproject.toml | ||
| README.md | ||
| README_CN.md | ||
| requirements.txt | ||
| reset_2fa.py | ||
| run_playwright_google.py | ||
| set_language.py | ||
| setup_2fa.py | ||
| sheerid_gui.py | ||
| sheerid_verifier.py | ||
| start_web.sh | ||
| sync_2fa_to_browser.py | ||
| test.py | ||
| uv.lock | ||
| zhanzhu_wx.jpg | ||
| zhanzhu_zfb.jpg | ||
BitBrowser Automation System
English | 中文
A FastAPI + Vue 3 + Playwright/BitBrowser API automation system for batch Google account operations: account management, window management, 2FA setup/reset, eligibility verification, age verification, and card subscription binding.
This repository is a secondary development of https://github.com/Leclee/auto_bitbrowser.
The system uses BitBrowser fingerprint browser and controls it via the local API (default 127.0.0.1:54345).
📌 Project Note
- This is just a for-fun fork of someone else's project. I don't run many accounts and I'm not a seller.
- The main goal is automated card binding and age verification.
- The project has many bugs and won't be maintained; it's just a hobby project.
🎯 Background & Goals
My main goal is to improve this system: I bought many email accounts without 2FA to save money, but this caused a lot of trouble (need to batch setup 2FA).
Additionally, I added age verification because I found that many accounts gain student eligibility after completing age verification, enabling batch processing of subsequent workflows.
Currently supported features:
- Auto 2FA setup
- Auto 2FA reset
- Auto eligibility verification (student status)
- Auto card binding & subscription
- Age verification (using virtual cards)
✨ Features
- Web Management UI: Account management, search/filter, batch import/export, real-time logs & progress.
- Browser Window Management: Create, restore, sync, open/close windows.
- Task Orchestration: Execute tasks in order with configurable concurrency and real-time progress updates.
- 2FA Automation: Auto setup/reset 2FA and sync keys to browser config.
- Eligibility Verification: Auto extract SheerID links and verify eligibility, detect account status.
- Age Verification: Complete age verification using virtual cards.
- Card Binding: Handle multi-layer iframes to complete card binding and subscription.
- Multi-language Support: Auto switch account language to English to reduce failures.
- Unified Data: SQLite as single data source, auto sync historical text files.
🛠️ Installation & Usage
Requirements
- Python: 3.11+ (recommended 3.12)
- Node.js: 18+
- uv: Python environment manager
- BitBrowser: Installed locally with API accessible (default
127.0.0.1:54345)
Environment Setup
# 1) Install dependency tools
pip install uv
# 2) Create and sync Python dependencies (creates .venv)
uv sync
# 3) Install frontend dependencies
cd web/frontend
npm install
Option 1: Quick Start Web UI (Recommended)
./start_web.sh
After startup, access:
- Frontend: http://localhost:5173
- Backend API: http://localhost:8000
- API Docs: http://localhost:8000/docs
Option 2: Manual Start
# Backend
uv run python -m uvicorn web.backend.main:app --reload --port 8000
# Frontend
cd web/frontend
npm run dev
⚙️ Configuration
🔒 Security Note: The following config files contain sensitive information (passwords, 2FA keys, card numbers). Please ensure:
- Do not commit to Git: These files are already in
.gitignore- Keep safe: Recommend encrypted storage or password manager
- Regular backup: Avoid data loss
- Use example files: Refer to
accounts_example.txtto create your own config
Web Config: You can fill in SheerID API Key and virtual card info in the Web UI "Config" page. The system will prioritize database config; only falls back to
cards.txtif not configured.
1. accounts.txt (Account Info)
📌 Separator Configuration
Configure separator on the first line (uncomment one):
# Separator config (uncomment one line)
分隔符="----"
# 分隔符="---"
# 分隔符="|"
# 分隔符=","
📋 Account Format
Format (fixed field order): Email[Separator]Password[Separator]BackupEmail[Separator]2FASecret
# Standard format (using ---- separator)
分隔符="----"
example1@gmail.com----MyPassword123----backup1@email.com----ABCD1234EFGH5678
example2@gmail.com----P@ssw0rd!%%99----backup2@email.com----WXYZ9012STUV3456
# Email and password only (backup email and 2FA are optional)
example3@gmail.com----ComplexP@ss#2024
2. proxies.txt (Proxy IPs)
Supports Socks5/HTTP, one per line:
socks5://user:pass@host:port
http://user:pass@host:port
3. cards.txt (Virtual Card Info)
Format: CardNumber Month Year CVV (space separated)
5481087170529907 01 32 536
5481087143137903 01 32 749
💳 Virtual Card Recommendation: HolyCard - Supports Gemini subscription, GPT Team, $0 Plus
4. Output Files (Auto Generated)
- accounts.db: SQLite database file
- sheerIDlink.txt: Successfully extracted verification links
- 已验证未绑卡.txt: Accounts verified but not yet bound with card
- 已绑卡号.txt: Accounts with completed card binding
- 无资格号.txt: Accounts detected as ineligible
📚 Documentation
See docs/ directory for complete technical documentation:
☕ Sponsor
⚠️ Disclaimer
- This tool is for learning and technical exchange only. Do not use for illegal purposes.
- Please comply with BitBrowser and related platform terms of service.
- The developer is not responsible for any account loss or legal liability arising from the use of this tool.
📄 License
This project is licensed under the MIT License.