Concert Ticket Price Monitor
Automated price monitor for resale concert tickets — scrapes StubHub and Viagogo every 30 minutes via GitHub Actions and emails an alert when prices drop below threshold.
Concert Ticket Price Monitor


A serverless price watcher built on GitHub Actions cron. Python + Playwright bypasses WAF challenges on both StubHub and Viagogo, normalizes fees across platforms, and fires a Gmail alert when prices cross the threshold.
How It Works
GitHub Actions cron (every 30 min) → Python + Playwright (headless Chromium) → StubHub + Viagogo DOM scrape → compare price + fees to threshold → Gmail SMTP alert if below.
Interesting Problems
AWS WAF challenges — both platforms sit behind AWS WAF. Playwright handles this by waiting for the price element to appear instead of scraping immediately.
Fee normalization — Viagogo adds a processing fee on top of the listed price. A configurable VIAGOGO_FEE is added before comparing to threshold.
No server needed — GitHub Actions provides free cron execution at zero runtime cost.
Stack
| Layer | Tech |
|---|---|
| Language | Python 3.9 |
| Browser automation | Playwright (headless Chromium) |
| Schedule | GitHub Actions cron (every 30 min) |
| Alerts | Gmail SMTP |
| Config | GitHub secrets + repository variables |