WooCommerce Product Scraper
Pricing
from $3.00 / 1,000 product scrapeds
Go to Apify Store
WooCommerce Product Scraper
Scrape WooCommerce store products via Store REST API. Extract prices, SKUs, stock status, categories, and images for competitor and market research.
Pricing
from $3.00 / 1,000 product scrapeds
Rating
0.0
(0)
Developer
Harsh
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
17 hours ago
Last modified
Categories
Share
Scrape product data from WooCommerce stores for competitor research, price monitoring, and catalog analysis. This Actor uses HTTP requests only (no browser) and tries multiple data sources automatically.
Features
- Store API first — uses the public WooCommerce Store API (
/wp-json/wc/store/v1/products) - REST API fallback — tries the WooCommerce REST API v3 (
/wp-json/wc/v3/products) when the Store API is unavailable - HTML fallback — scrapes product links from
/shop/and parses product pages when JSON APIs are blocked - Variation support — optionally fetches product variations for variable products
- Graceful errors — pushes error records when a store cannot be scraped
Input
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
storeUrls | string[] | Yes | — | WooCommerce store base URLs |
maxProducts | integer | No | 100 | Max products per store |
includeVariations | boolean | No | false | Include variable product variations |
Example input
{"storeUrls": ["https://demo.woothemes.com/storefront"],"maxProducts": 25,"includeVariations": false}
Output
Each dataset item contains:
| Field | Description |
|---|---|
title | Product name |
sku | Stock keeping unit |
price | Current price |
regularPrice | Regular price |
salePrice | Sale price |
stockStatus | instock, outofstock, or onbackorder |
categories | Category names |
images | Image URLs |
permalink | Product page URL |
storeUrl | Source store URL |
scrapedAt | ISO timestamp |
error | Error message when scraping failed |
How it works
- For each store URL, the Actor normalizes the base URL.
- It paginates through the Store API (
per_page=100). - If that fails, it tries the WC REST API v3 endpoint.
- If both JSON endpoints fail, it scrapes
/shop/for product links and parses each product page. - Results are saved to the default dataset.
Local development
npm installapify run
Create storage/key_value_stores/default/INPUT.json with your test input, or edit the prefill values in the input schema.
Deploy
apify loginapify push
Notes
- Some stores disable public REST APIs and only allow HTML scraping.
- WC REST API v3 often requires authentication; the Actor handles this by falling back automatically.
- Respect each store's terms of service and robots.txt when scraping.