Skip to content

RZ-Logic/gpu-price-alert-bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GPU Deals Canada

🇨🇦 GPU Deals Canada

Free GPU price alerts across 4 Canadian retailers. Because MSRP is a lie.

Setup License Python Discord Cost

The ProblemHow It WorksScreenshotsCommandsQuickstartDeploy


Just want alerts without running your own bot? Join our Discord server: GPU Deals Canada


💀 The Problem

The Canadian GPU market is broken.

GPU MSRP (CAD) Actual Street Price (CAD) Markup
RTX 5090 $2,729 $5,299+ 94%
RTX 5080 $1,364 $1,759+ 29%
RTX 5070 Ti $1,022 $1,369+ 34%

GDDR7 memory shortage + AI demand = prices that make your wallet cry. Founders Edition cards sell out in minutes. If you're not watching prices 24/7, you're not getting a deal.

This bot watches for you.

⚡ How It Works

┌──────────────────────────────────────────────────────┐
│  You: /alert RTX 5080 1500                           │
│                                                      │
│  Bot checks 4 Canadian retailers every hour:         │
│  ├── Newegg.ca                                       │
│  ├── Amazon.ca                                       │
│  ├── Canada Computers                                │
│  └── Walmart.ca                                      │
│                                                      │
│  Price drops below $1,500?                           │
│  → 🚨 @you DEAL ALERT — RTX 5080 — $1,459 CAD      │
│  → Best price across all 4 retailers                 │
│  → Direct buy link included                          │
│  → Price trend data attached                         │
└──────────────────────────────────────────────────────┘

No API keys. No paid tiers. No LLM costs. Direct retailer data from 4 Canadian stores — the same sites you'd check manually, automated.

📸 Screenshots

Set a price alert (private — only you see this)

Setting a price alert

Price comparison across 4 retailers

Price lookup across retailers

🚨 Deal alert — price dropped below target

Deal alert notification

🎮 Commands

Command What It Does
/alert RTX 5080 1500 Get pinged when the RTX 5080 drops below $1,500 CAD
/lookup RTX 5070 TI Instant price check across all 4 retailers — no alert needed
/prices Market scan — current lowest prices for 8 popular GPUs
/check Force an immediate price check on all your active alerts
/trend RTX 5090 Price history — current, all-time low/high, direction
/list View your active alerts (private)
/remove RTX 5080 Remove an alert

All commands support autocomplete — start typing a GPU name and the bot suggests matches.

🏗️ Architecture

                         ┌──────────────────────┐
┌──────────────┐         │    Discord Bot        │
│ Discord User │────────▶│    (discord.py)       │
│ /alert       │         │                       │
│ /check       │         │  ┌────────────────┐   │       ┌──────────────┐
│ /lookup      │         │  │  Alert Engine   │───│──────▶│  Newegg.ca   │
└──────────────┘         │  │  • JSON store   │   │  │    │  (requests)  │
                         │  │  • 1hr cron     │   │  │    └──────────────┘
                         │  │  • Deduped      │   │  │    ┌──────────────┐
                         │  │    GPU checks   │───│──┼───▶│  Walmart.ca  │
                         │  └────────────────┘   │  │    │  (curl_cffi)  │
                         │                       │  │    └──────────────┘
                         │  ┌────────────────┐   │  │    ┌──────────────┐
                         │  │ Price History   │   │  ├───▶│  Amazon.ca   │
                         │  │ • Trend data    │   │  │    │  (curl_cffi)  │
                         │  │ • 500 entries   │   │  │    └──────────────┘
                         │  │   per GPU       │   │  │    ┌──────────────┐
                         │  └────────────────┘   │  └───▶│  Canada      │
                         │                       │       │  Computers   │
                         └──────────────────────┘       │  (curl_cffi)  │
                                                        └──────────────┘
Component Technology Why
Bot Framework discord.py Mature, async, slash command support
Newegg.ca requests + BeautifulSoup Server-rendered HTML, no anti-bot
Walmart.ca curl_cffi + __NEXT_DATA__ JSON Next.js site — JSON is embedded in page, 100% reliable
Amazon.ca curl_cffi + HTML parsing Needs TLS fingerprint spoofing to bypass bot detection
Canada Computers curl_cffi + hidden AJAX endpoint Found their internal API — returns structured JSON
Storage JSON files Zero dependencies, trivially portable
Scheduling asyncio background task No external cron needed

Why These 4 Retailers?

We tested every major Canadian GPU retailer. These are the ones that work reliably without paid proxies or headless browsers:

Retailer Method Status
Newegg.ca Plain HTTP ✅ Works
Walmart.ca TLS fingerprint spoofing ✅ Works
Amazon.ca TLS fingerprint spoofing ✅ Works
Canada Computers Hidden AJAX API ✅ Works
Best Buy Canada Cloudflare ❌ Blocked
Memory Express Cloudflare ❌ Blocked

🚀 Quickstart

1. Create a Discord Bot (2 minutes)

Go to Discord Developer Portal → New Application → Bot → enable MESSAGE CONTENT intent → copy the bot token.

2. Clone & Install

git clone https://github.com/RZ-Logic/gpu-price-alert-bot.git
cd gpu-price-alert-bot
pip install discord.py requests beautifulsoup4 curl_cffi

3. Run

Windows:

set DISCORD_BOT_TOKEN=your-bot-token
python gpu_discord_bot.py

Mac/Linux:

export DISCORD_BOT_TOKEN=your-bot-token
python gpu_discord_bot.py

The bot prints an invite link on startup. Click it to add to your server. Done.

🌐 Deploy (Keep It Running 24/7)

Railway (recommended — free tier available)

npm install -g @railway/cli
railway login
railway init
railway up

Set DISCORD_BOT_TOKEN as an environment variable in the Railway dashboard.

Docker

FROM python:3.12-slim
WORKDIR /app
COPY gpu_discord_bot.py .
RUN pip install discord.py requests beautifulsoup4 curl_cffi
CMD ["python", "gpu_discord_bot.py"]
docker build -t gpu-bot .
docker run -d -e DISCORD_BOT_TOKEN=your-token --name gpu-bot gpu-bot

Any VPS ($4-6/month)

git clone https://github.com/RZ-Logic/gpu-price-alert-bot.git
cd gpu-price-alert-bot
pip install discord.py requests beautifulsoup4 curl_cffi
screen -S gpu-bot
export DISCORD_BOT_TOKEN=your-token
python gpu_discord_bot.py
# Ctrl+A, D to detach

💰 Cost

Item Cost
Discord bot Free
Retailer scraping Free
Railway/local hosting Free
Total $0/month

Compare this to HotStock Premium ($5-11/month USD), which doesn't even cover Canadian retailers properly.

🗺️ Roadmap

  • Price history charts — visual graphs in Discord embeds
  • Best Buy + Memory Express — via headless browser when Cloudflare is bypassed
  • Used market tracking — eBay.ca, Facebook Marketplace
  • Multi-currency — USD/CAD comparison for cross-border deals
  • Browser extension — price alerts directly on retailer websites
  • Webhook mode — Telegram/email alerts alongside Discord

🤝 Contributing

The codebase is a single Python file. Read it in 10 minutes, contribute in 20.

git clone https://github.com/RZ-Logic/gpu-price-alert-bot.git
cd gpu-price-alert-bot
python gpu_discord_bot.py  # Test locally
# Submit PR

Great first contributions:

  • Support for more retailers (direct scraping or new hidden APIs)
  • French-language support for Quebec gamers
  • Price comparison visualization
  • Webhook integrations (Telegram, Slack, email)

📜 License

MIT — do whatever you want with it.


Built by a gamer who does no-damage boss fights when time permits and builds open-source tools that help people.

If this saved you money on a GPU, star the repo ⭐

About

Free Discord bot that tracks GPU prices across 4 Canadian retailers and alerts you when they drop. Zero cost, zero API keys.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages