WooCommerce Products Scraper
Pricing
from $2.49 / 1,000 results
WooCommerce Products Scraper
WooCommerce Store Scraper SD - WooCommerce Store Scraper is an e-commerce data tool that extracts products, variations, categories and reviews of any WooCommerce store via its public Store API: SKU, prices, sale prices, stock status, ratings, attributes and images. No login.
Pricing
from $2.49 / 1,000 results
Rating
0.0
(0)
Developer
Neuro Scraper
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
15 days ago
Last modified
Categories
Share
WooCommerce Store Scraper
WooCommerce Store Scraper exports the catalogue of any WooCommerce shop through the public Store API that
WooCommerce itself publishes (/wp-json/wc/store/v1/...). No login, no API keys, no browser.
- Products: name, SKU, type, price, regular/sale price, price range, currency, stock status, rating, review count, categories, tags, attributes, variation list, images, descriptions, weight and dimensions.
- Variations: one row per purchasable variation (size, colour ...) with its own SKU, price and stock.
- Categories: id, name, slug, URL, parent, product count, review count, image.
- Reviews: rating, reviewer, text, verified-buyer flag and date - for a whole store, a category or one product.
- Works with any permalink format and with WordPress installed in a sub-folder: the API root and the id of the product/category a URL shows are read from that page on every run.
Input
| Field | Type | Description |
|---|---|---|
startUrls | array | Store home/shop page (https://nalgene.com), category page (/product-category/bottles/), product page, or a bare domain. |
outputType | products / variations / categories / reviews | Row type. Default products. |
searchTerms | array | Optional keywords searched inside each store or category (the store's own search). |
sort | default / newest / price-asc / price-desc / popularity | Listing order. |
maxItems | integer | Maximum rows in total. Default 20. |
proxyConfiguration | proxy | Default Apify automatic proxy; use RESIDENTIAL if a store answers 403/429. |
Output (products)
| Field | Example |
|---|---|
id, name, slug, url, type, sku | 905247, Four Wheeling Sticker, ..., simple, 682020-0117 |
price, regularPrice, salePrice, priceMin, priceMax, onSale, currency | 5.0, 5.0, null, 5.0, 5.0, false, USD |
inStock, stockStatus, isPurchasable | true, In stock, true |
averageRating, reviewCount | 4.78, 156 |
categories, tags, attributes, variationsCount, variations | names; [{"name":"Bottle Color","values":[...]}]; [{"id":877590,"attributes":{...}}] |
image, images, shortDescription, description, weight, dimensions | URLs, plain text, 0.1 lbs, 3 × 1 × 3 in |
searchTerm (when searching), storeName, storeDomain, inputUrl, scrapedAt |
Variation rows: id, productId, name, variation (Graphic: Clear with Black Sasquatch), attributes, sku,
price, regularPrice, salePrice, onSale, currency, inStock, stockStatus, isPurchasable, image, url.
Review rows: id, productId, productName, productUrl, rating, reviewer, review, verified, date.
Measured limits (2026-10-03)
- 10 of 30 probed shops answered the Store API (others: not WooCommerce, API disabled, or blocked by a firewall); a WordPress site without WooCommerce, or with the API switched off, is skipped with an error line.
- 100 products per request (the API's maximum:
per_page=101-> HTTP 400). 250 products in 9 s; 150 reviews in 6 s. - Variations: one batched request per listing page (40 variation rows in 14 s on nalgene.com).
- Prices are the store's own (
currency_code+ minor units); affiliate (external) products carry whatever price the shop entered. - Weight/dimensions exist only for physical goods; ratings only where the shop has reviews enabled.
Example
{"startUrls": [{"url": "https://nalgene.com"}], "outputType": "variations", "searchTerms": ["wide mouth"], "maxItems": 100}