Describe the data.
We scrape it forever.
AI writes the extractor from a plain sentence, runs it on your schedule, and heals it when sites change.
> track prices on globalmart.sa/monitors
reading page structure…
selectors written: .product-card → name, price, stock
Atlas 27" Monitor $306 in stock
ViewMax 24" IPS $184 in stock
Keychron Q1 Pro $190 low
24 rows extracted · schedule: hourly
Δ diff vs last run: 2 price drops, 1 back in stock
✓ webhook delivered → your-api.example/hooks
Three moves, then it runs itself
Describe
Paste a URL and say what you want in plain language. The AI writes the selectors.
Schedule
Hourly, daily, or weekly. Diff detection means you only hear about changes.
Receive
CSV, JSON, Google Sheets, or a signed webhook straight into your pipeline.
Built for sites that fight back
Self-healing scrapers
When a site redesigns and selectors die, the AI re-reads the page and re-maps them. Your schedule never notices.
before
.product-card .price
healed
[data-testid=price] span
Diff detection
Every run is compared to the last. Added, changed, removed. Silence means nothing moved.
Clean delivery
Structured output where your team already works.
Polite by default
robots.txt honored, one request per second per host, proxy rotation on paid plans.
Whole-site crawls
The AI picks which links matter and walks the site for you.
Start from a recipe
Browse recipesPriced by pages, not seats
Every paid plan starts with a 14-day trial. Charged in your local currency.
A REST API your pipeline can poll
Trigger runs, pull the latest rows, wire it into Zapier or Make. Scale plan includes full API access.
API docscurl https://pagebyte.app/api/scrapers/scr_8f2/latest \
-H "X-Api-Key: pb_4d1f...c9"
{
"ranAt": "2026-07-04T06:00:11Z",
"rows": [
{ "name": "Atlas 27\" Monitor",
"price": "$306", "stock": "in stock" }
]
}