I wanted the best price. So I built a crawler.
I was shopping for a camera lens. Checked five websites. Got five different prices. None of them told me if the price was good or terrible. I got annoyed. So I built ShopSerp.
What it does
ShopSerp crawls 250+ stores across 17 countries. It tracks price history, calculates best and average prices, and tells you whether the deal you're looking at is actually a deal. Not "compared to the manufacturer's suggested retail price." Compared to what people are actually paying right now, everywhere.
How it started
It started as a script. A single Python file that scraped three stores and dumped results into a CSV. Then I added more stores. Then I needed a database. Then I needed a frontend to make sense of the data. Then I needed agents to handle the searching and normalization because every store structures their product data differently.
It turned into a proper platform. Vue frontend. PostgreSQL backend. Agentic patterns for search and data normalization. The agents figure out product matching across stores where the same item has twelve different names and three different SKU formats.
Using it
Now I use it for everything I buy. Headphones. Monitors. Kitchen appliances. I search once, get a price map across countries, see the history, and decide. The agents handle the searching. I handle the buying.
The best part is the price history. Retailers love to "discount" a product by raising the price for two weeks and then dropping it back to normal. ShopSerp sees through that because it has the data. The line doesn't lie.