Break alerts for web scraper selectors
The idea
Scrapers fail in the worst possible way: silently, returning empty arrays that flow downstream as zeros until someone notices the dashboard looks odd a week later. For anyone whose product or growth motion runs on scraped data, that week is directly lost revenue, and the cause is usually mundane, a target site shipped a redesign and .price no longer matches anything.
Uptime monitors are useless here because the page returns 200 the whole time. The wedge is monitoring the selector, not the site: does this CSS path still match, does it still look like a price. The retention hook is the repair loop, alerting with a DOM diff and an LLM-proposed replacement selector you can validate in one click, which turns a debugging session into a two-minute fix.
Who pays
The buyer is a data-product builder, growth engineer or indie founder running revenue-relevant scrapers, price monitoring, lead enrichment, aggregation sites. At 19 to 79 dollars a month it prices against the cost of one silent dead week. Distribution: scraping and automation communities (r/webscraping, Scrapy/Playwright Discords), SEO on scraper broke after redesign queries, and the free two-monitor tier as the hook.
MVP scope
- Monitor registration with labeled selectors and per-selector expectations
- Scheduled Playwright checks with distinct detection of blocks/CAPTCHAs vs selector rot
- Alerts with extracted-value history and localized DOM diff
- LLM-suggested replacement selector with live one-click validation
- Free tier, Stripe-billed paid tiers with hourly checks at the top
- Skip for v1: running the customer’s full scraper code, proxy management as a service, JavaScript-API/XHR endpoint monitoring, data delivery pipelines
Build SelectorSentinel, a monitoring service for web scraper selectors. Stack: Next.js dashboard, Playwright workers for headless checks, Supabase for auth, data and scheduled jobs; Stripe checkout for paid tiers. Core flow: user registers a monitor: target URL, a list of CSS/XPath selectors with labels (price, title, stock_status), check frequency (daily on cheap tiers, hourly on top tier), and an optional expectation per selector (matches at least N elements, extracted text matches a regex, numeric value within a range). A Playwright worker loads the page on schedule with realistic headers and a rotating user agent, evaluates each selector, and compares against the last healthy snapshot. On failure (zero matches, expectation violated, or page-level failure like a 403 or a CAPTCHA interstitial, which should be detected and reported distinctly from selector rot), send an email/Slack alert containing: which selectors broke, the extracted-value history, and a DOM diff of the region around the last-known-good element. Then run the stored last-good outerHTML plus the new page HTML through an LLM to propose a replacement selector, shown with a one-click test-now button that validates it live before the user accepts it into the monitor. Pages: landing with an interactive try-it (paste URL and selector, instant check), monitors dashboard with health badges, monitor detail with value history sparkline and incident log, alert settings, billing. Implementation notes: store per-check snapshots of matched outerHTML, not full pages, to keep storage sane; jitter check times to avoid looking like a bot fleet. Pricing: free 2 monitors daily; 19 GBP/month 15 monitors; 79 GBP/month 100 monitors hourly.
// More Dev tool ideas
-
Deprecation countdowns for the APIs you use
Stripe and Shopify deprecations hide in changelogs until things break; this scans your code for affected calls and gives you a countdown.
Dev tool 1 month -
App store reviews filed as GitHub issues
Bug reports buried in app store reviews never reach the tracker; this clusters new reviews and files deduped GitHub issues nightly.
Dev tool 1 week -
Nightly restore drills for database backups
A backup you've never restored is a guess; this restores your Postgres dump to a scratch instance nightly and proves the data is intact.
Dev tool 1 week -
Hosted monitoring and alerts for BullMQ queues
A stuck BullMQ queue can silently eat jobs for days; hosted dashboards, dead-letter alerts and retry controls without running Grafana.
Dev tool 1 week