E-commerce Product Scraper
Extract clean product metadata from a public product page, including title, price, currency, availability, image, brand, SKU, rating, review count, and description when visible.
Overview
E-commerce Product Scraper turns a public product detail page into normalized product metadata for monitoring, catalog enrichment, competitive research, and agent workflows. It renders the target through Better Fetch, prefers standards-based JSON-LD Product markup, and falls back to Open Graph, product meta tags, itemprop attributes, and common storefront HTML patterns.
Last validated: Jul 3, 2026
Playground
Input
urlstring (uri)requiredPublic product page URL
max_description_charsintegerdefault: 1200Maximum number of characters to keep from the product description
Output
skustringSKU, product ID, or MPN
urlstringrequiredRequested product URL
brandstringBrand or manufacturer name
imagestringPrimary product image URL
pricenumberVisible product price
titlestringrequiredProduct title
ratingnumberAggregate rating value
statusintegerHTTP status code
currencystringISO currency code or visible currency marker
final_urlstringrequiredFinal URL after redirects
descriptionstringProduct description text
availabilitystringVisible availability status
review_countintegerAggregate review count
Examples
books-to-scrape
{
"url": "https://books.toscrape.com/catalogue/a-light-in-the-attic_1000/index.html",
"max_description_chars": 800
}Use cases
FAQ
Does E-commerce Product Scraper work on every store?
It works best on public product detail pages that expose JSON-LD Product data, Open Graph product tags, itemprop attributes, or common visible price and availability markup.
Does the tool need store API keys?
No. The tool reads public page content through Better Fetch and does not use private store APIs, carts, checkout sessions, or account-specific credentials.
What happens when a field is not visible?
Missing values are omitted from the output rather than guessed, so downstream systems can distinguish visible data from unavailable metadata.
Use it anywhere
MCP (Claude, Cursor, any client)
# Add the Better Fetch MCP connector (or paste the URL into # Claude → Settings → Connectors → Add custom connector): claude mcp add --transport http better-fetch https://betterfetch.co/api/mcp \ --header "Authorization: Bearer bf_your_key_here" # Then ask for the tool by name: ecommerce_product_scraper
REST
curl -sS -X POST "https://betterfetch.co/api/tools/ecommerce_product_scraper/run" \
-H "Authorization: Bearer bf_your_key_here" \
-H "Content-Type: application/json" \
-d '{"input": {"url":"https://books.toscrape.com/catalogue/a-light-in-the-attic_1000/index.html","max_description_chars":800}}'Run locally
git clone https://github.com/better-fetch/ecommerce-product-scraper && cd ecommerce-product-scraper && npm i
BETTER_FETCH_API_KEY=bf_your_key_here npx bf-tool run --input '{"url":"https://books.toscrape.com/catalogue/a-light-in-the-attic_1000/index.html","max_description_chars":800}'