Amazon Product Scraper
Pricing
from $3.00 / 1,000 results
Amazon Product Scraper
Extract structured Amazon product data - title, ASIN, price, brand, rating, reviews, images, description, and attributes - from search, category, or product URLs. Auto-pagination, full detail extraction, and clean JSON output.
Pricing
from $3.00 / 1,000 results
Rating
5.0
(1)
Developer
Dev Patel
Maintained by CommunityActor stats
2
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Extract structured product data from Amazon at scale — from search, category, or direct product URLs. Built on the Apify SDK + Crawlee with automatic proxy rotation, session management, and captcha/robot-check detection.
What it does
Give it one or more Amazon URLs and it returns clean, structured JSON for each product: title, ASIN, brand, price, rating, review count, images, feature bullets, description, availability, breadcrumbs, and product attributes.
- 🔎 Search & category pages — paginates automatically and scrapes every product
- 📦 Product pages — full detail extraction (description, images, attributes)
- ⚡ Lightweight mode — skip detail pages for fast, cheap search-level data
- 🔁 Pagination — controlled by max-results and max-pages limits
- 🛡️ Block handling — detects robot-check pages and retries on fresh sessions
Input
| Field | Type | Description |
|---|---|---|
categoryUrls | array | Required. Amazon search, category, or product URLs. Search: https://www.amazon.com/s?k=keyboard · Product: https://www.amazon.com/dp/B08N5WRWNW |
maxItemsPerStartUrl | integer | Max products per start URL. Default 100. |
maxSearchPagesPerStartUrl | integer | Max search pages to paginate per start URL. Default 9999. |
scrapeProductDetails | boolean | false (default, cheapest) returns the rich search-page data for every product; true opens each product page for full detail (description, all images, attributes) but costs ~40× more (one request per product). |
proxyConfiguration | object | Proxy settings. Residential proxies strongly recommended (see below). |
Example input
{"categoryUrls": [{ "url": "https://www.amazon.com/s?k=mechanical+keyboard" }],"maxItemsPerStartUrl": 50,"scrapeProductDetails": true,"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }}
Output
Each dataset item:
{"asin": "B0D14N2QZF","title": "AULA F75 Pro Wireless Mechanical Keyboard...","brand": "AULA","url": "https://www.amazon.com/dp/B0D14N2QZF","price": 65.99,"listPrice": 78.89,"currency": "USD","stars": 4.7,"reviewsCount": 1583,"inStock": true,"availability": "In Stock","features": ["75% layout with knob", "Hot-swappable switches", "..."],"description": "...","breadcrumbs": ["Electronics", "Computers & Accessories", "..."],"attributes": { "Brand": "AULA", "Connectivity": "Bluetooth, 2.4 GHz, USB-C" },"thumbnailImage": "https://m.media-amazon.com/images/I/....jpg","images": ["https://...1500.jpg", "..."],"scrapedFrom": "https://www.amazon.com/s?k=mechanical+keyboard"}
⚠️ Proxies & the price field
Amazon serves a server-rendered page with the buybox price only to trusted sessions. From datacenter IPs or untrusted fingerprints it ships a "skeleton" page where the price is filled in later by JavaScript — so the price field can come back null on low-quality connections, even though every other field (title, brand, rating, reviews, images, features, description) is still extracted correctly.
To get prices reliably, use good residential proxies. The default config requests Apify Residential. If you see empty prices, your proxy IPs are likely flagged by Amazon — switch to a premium residential pool (BrightData, Oxylabs, IPRoyal) via the proxy settings. All non-price fields work regardless of proxy quality.
Use cases
- 💰 Price monitoring & competitive intelligence
- 📊 Product & market research
- ⭐ Review-volume and rating tracking
- 🛒 Catalog enrichment and lead generation