39246-vm/README.md
abbashkyt-creator 7d8ce0e322 V0.1
2026-03-14 04:02:22 +03:00

107 lines
3.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# πŸ‘» Ghost Node β€” Auction Sniper
A modular, multi-threaded auction sniper for Windows 11 with human-mimicry,
Telegram C2 command, and a cyber-terminal dashboard.
---
## Architecture
```
worker.py
β”œβ”€β”€ Thread A β€” FastAPI + Dashboard (port 8000)
β”œβ”€β”€ Thread B β€” Async Playwright Scraper (nuclear_engine)
└── Thread C β€” Telegram C2 Command Listener
```
## File Structure
```
ghost_node/
β”œβ”€β”€ database.py # SQLAlchemy engine & session factory
β”œβ”€β”€ models.py # ORM models, heuristic scoring, DB seeder
β”œβ”€β”€ worker.py # FastAPI routes + scraper + Telegram C2
β”œβ”€β”€ dashboard.html # Cyberpunk terminal UI (5 tabs)
β”œβ”€β”€ requirements.txt
└── README.md
```
---
## Installation (Windows 11, Python 3.11+)
```powershell
# 1. Create virtual environment
python -m venv .venv
.venv\Scripts\activate
# 2. Install dependencies
pip install -r requirements.txt
# 3. Install Chromium for Playwright
playwright install chromium
# 4. Launch Ghost Node
python worker.py
```
Then open: **http://localhost:8000**
---
## Quick Setup via Dashboard
1. **Settings tab** β€” Enter your Telegram Bot Token and Chat ID, set cycle timer.
2. **Keywords tab** β€” Your top search terms are pre-seeded (RTX 4090, Tab S10, etc.).
3. **Target Sites tab** β€” eBay UK and eBay US are pre-seeded with `{keyword}` templates.
4. The engine starts automatically β€” watch the Dashboard for live stats.
---
## Telegram C2 Commands
| Command | Action |
|-------------|---------------------------------------------|
| `/status` | Node health report (engine, uptime, alerts) |
| `/pause` | Pause the scraper engine |
| `/resume` | Resume the scraper engine |
| `/listings` | Last 5 captured listings |
---
## Heuristic Scoring
**Positive (+10):** GB, RAM, Unlocked, SSD, RTX, GPU, S10, NVMe, OLED
**Negative (βˆ’10):** Cover, Case, Sleeve, Box Only, Broken, For Parts, Faulty
Only listings with **score β‰₯ 0** trigger Telegram alerts.
Keyword weight multiplies the base score.
---
## Baghdad Network Optimisations
- 60-second global page timeout per navigation
- Per-site try/except β€” one timeout never crashes the full cycle
- Resource blocking (images/fonts/videos) for faster loads
- 5–15s randomised jitter between keywords
---
## Adding New Sites
In the **Target Sites** tab:
- **Name**: Human label (e.g. `Gumtree UK`)
- **URL Template**: Full search URL with `{keyword}` placeholder
e.g. `https://www.gumtree.com/search?search_category=all&q={keyword}`
- **Search Selector**: CSS selector for the search box (leave blank to use URL directly)
---
## Notes
- `sniper.db` is created automatically in the working directory on first run.
- All config (Telegram token, timer) is persisted to SQLite on every Save.
- Playwright-stealth is implemented via `add_init_script` to avoid detection.
- Rotating user-agents are applied per browser context (one context per site per cycle).