Build · Intermediate · A weekend
Build a price and listing tracker with open-source software
Watch prices, listings or event pages and get a message the moment something you care about changes.
Instead of paying for Zapier, Firecrawl Cloud or ChatGPT Plus.
What you'll build
Your own tracker for the web: it checks the pages you care about on a schedule and tells you only when something worth knowing changes. Flight fares dropping, a rental appearing under your budget, a rare item listed nearby, a local gig announced, a cheaper shop for your weekly basket. Instead of paying for several alert apps, one setup watches all of them, and a local AI model sums up the change in a sentence.
Blueprint
Scrapling or Crawl4AI pulls the listings, Ollama sums them up, and Huginn checks on a schedule and sends the alert.
- You Pages to watch and your rules (price under X) Huginn
- Huginn Which page to fetch, on a schedule Scrapling
- Scrapling The listings it found Ollama
- Ollama A one-line summary of what changed Huginn
- Huginn An email or chat alert You
The repos
- 01 · Watch and alert Huginn
Self-hosted Ruby on Rails system of agents that watch the web, feeds, mailboxes and webhooks and act on events, like IFTTT or Zapier.
- Setup
- Medium, one docker run to try; Docker Compose with MySQL or PostgreSQL for production source
- Hardware
- 0.5 GB RAM + 0.5 GB swap minimum, 2 GB RAM recommended; dual core recommended source
- Paid extras
- None required; AI agents use your own OpenAI-compatible API if you choose
- 02 · Scrape the pages Scrapling
Python scraping and crawling framework with adaptive selectors, stealth browser fetchers, Scrapy-like spiders and Markdown output for AI.
- Setup
- Easy, pip install scrapling; browser fetchers need the fetchers extra and scrapling install source
- Hardware
- Not documented; browser fetchers run Chromium source
- Paid extras
- None required; proxies optional
- 03 · Crawl into clean text Crawl4AI
Open-source Python web crawler that turns pages into clean, LLM-ready Markdown or structured JSON, as a library, CLI or Docker server.
- Setup
- Easy, pip install crawl4ai then crawl4ai-setup to install the browser source
- Hardware
- Not documented; runs a headless browser source
- Paid extras
- None required; LLM extraction optional (local Ollama or paid APIs), Crawl4AI Cloud optional
- 04 · Sum up what changed Ollama
Local model runner that downloads and serves open LLMs (Gemma, Qwen, DeepSeek, gpt-oss and more) with a CLI and local API.
- Setup
- Easy; one-line install script or installer, then ollama run source
- Hardware
- Apple M-series or x86 (CPU only) on Mac; 4GB for Windows binary; RAM not stated source
- Paid extras
- None for local use; Ollama Cloud plans optional (Pro $20/month)
Step by step
Install commands change, so each step links to the repo's own docs for the exact commands.
-
List what you want to watch
Write down each page, what counts as a change worth knowing (a price under a number, a new listing, a date) and how often to check. Once an hour is plenty for most sites; be polite.
-
Tune out the noise
Run it for a week and tighten the rules until every alert is one you wanted.
Watch out
Check each site's terms before scraping it. Sports, transit and weather data come from outside feeds, not these repos.
Take it further
- A grocery basket that tells you which nearby shop is cheapest this week.
- A rental watcher that works out price per square metre and flags extra fees.
- A weekly digest of local gigs and events instead of instant alerts.
Questions
Is scraping allowed?
It depends on the site's terms and your country's law. Many sites allow light personal use; some forbid it. Prefer official feeds or APIs where they exist.
Why both Scrapling and Crawl4AI?
They overlap. Scrapling is good at pulling specific items from a page; Crawl4AI is good at turning whole pages into text for the model. Use one or both.
Can it check prices behind a login?
Avoid it. Using your accounts with scrapers can break the site's terms and get the account blocked.
Every repo here is open source, still maintained and checked against its own documentation. How we check →