WooCommerce Scraper — 100 Free Products avatar

WooCommerce Scraper — 100 Free Products

Pricing

$2.00 / 1,000 products

Go to Apify Store
WooCommerce Scraper — 100 Free Products

WooCommerce Scraper — 100 Free Products

Scrape products from any WooCommerce store. Get prices, images, SKU, stock status, categories, ratings, and descriptions. 3-level fallback: Store API, sitemap, HTML. HTTP-only, no browser. 100 free products, then $2.00 per 1,000.

Pricing

$2.00 / 1,000 products

Rating

5.0

(1)

Developer

Sourabh Kumar

Sourabh Kumar

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

🛒 WooCommerce Scraper — 100 Free Products

Scrape products from any WooCommerce store. Prices, images, SKU, stock status, categories, ratings, and more. Works on 85%+ of WooCommerce stores with zero configuration.

🚀 What It Does

Enter a WooCommerce store URL and get structured product data. The scraper uses a smart 3-level fallback strategy:

  1. WooCommerce Store API — Fastest, richest data (prices, categories, ratings, stock)
  2. Product Sitemap + HTML — Extracts structured data from product pages via ld+json
  3. Shop Page Crawl — Discovers products by crawling the store's shop page

The scraper auto-detects which method works for each store. No configuration needed.

✨ Features

  • 🔄 3-level fallback — Works even if the Store API is disabled
  • 💰 Accurate pricing — Handles sale prices, currency conversion, minor units
  • 📦 Stock status — In stock, out of stock, low stock
  • 🏷️ Categories & SKU — Full product taxonomy
  • Ratings & reviews — Average rating and review count
  • 🖼️ All images — Full-size product image URLs
  • 🌐 Any WooCommerce store — Works on 85%+ of WooCommerce stores worldwide
  • HTTP-only — No browser needed, fast and cost-effective

📥 Input Parameters

ParameterTypeRequiredDescription
storeUrlstringYesURL of the WooCommerce store (e.g., https://example.com)
maxProductsintegerNoMaximum number of products to scrape. Leave empty for all.

📤 Output Example

{
"name": "USDA Prime Dry-Aged Bone-In Ribeye Steak",
"price": 109.99,
"regularPrice": 129.99,
"salePrice": 109.99,
"currency": "USD",
"description": "Our finest dry-aged bone-in ribeye, hand-selected from USDA Prime beef.",
"shortDescription": "Premium dry-aged bone-in ribeye steak.",
"sku": "PY-RBDA-01",
"url": "https://www.porterandyork.com/product/usda-prime-dry-aged-bone-in-ribeye/",
"images": [
"https://www.porterandyork.com/wp-content/uploads/ribeye-1.jpg",
"https://www.porterandyork.com/wp-content/uploads/ribeye-2.jpg"
],
"categories": ["Beef", "Steaks", "Dry-Aged"],
"inStock": true,
"stockStatus": "instock",
"rating": 4.8,
"reviewCount": 42,
"productType": "simple",
"storeUrl": "https://www.porterandyork.com"
}

💡 Use Cases

  • Price Monitoring — Track competitor prices across WooCommerce stores
  • Competitor Analysis — Compare product catalogs, pricing strategies, stock levels
  • Catalog Export — Export your own WooCommerce store products to CSV/JSON
  • Market Research — Analyze product categories, pricing trends, and inventory
  • Lead Generation — Find products and suppliers in specific niches
  • SEO Analysis — Audit product descriptions, categories, and metadata

💰 Pricing

TierCostDetails
🎁 Free$0First 100 products lifetime — no credit card needed
💳 Paid$2.00 per 1,000 productsPay only for what you scrape

🏪 Supported Stores

This scraper works on any WooCommerce store, including:

  • Online retail stores
  • Food & beverage shops
  • Fashion & apparel
  • Electronics & gadgets
  • Health & wellness
  • Sports & outdoor equipment
  • And any other WooCommerce-powered store

⚠️ Limitations

  • ~15% of stores with aggressive bot protection (Cloudflare JS challenges, CAPTCHA) may not work via HTTP-only
  • Stores that have completely disabled the WooCommerce Store API AND have no product sitemap will fall back to shop page crawling, which may return fewer data fields
  • The scraper does not handle stores behind login walls or password-protected catalogs

🔧 How It Works

  1. Normalizes the input URL (adds https:// if needed, strips trailing slashes)
  2. Tries Store API — Sends GET /wp-json/wc/store/v1/products with pagination
  3. Falls back to sitemap — If API unavailable, fetches /product-sitemap.xml and scrapes each product page
  4. Extracts structured data — Parses ld+json (Schema.org Product) from HTML pages
  5. Transforms & outputs — Normalizes all data into a consistent flat format

📊 Data Fields

FieldTypeDescription
namestringProduct name
pricenumberCurrent price
regularPricenumberRegular (non-sale) price
salePricenumberSale price (if on sale)
currencystringCurrency code (USD, EUR, etc.)
descriptionstringFull product description (text)
shortDescriptionstringShort description
skustringStock Keeping Unit
urlstringProduct page URL
imagesarrayProduct image URLs
categoriesarrayProduct categories
inStockbooleanWhether product is in stock
stockStatusstringStock status (instock/outofstock)
ratingnumberAverage customer rating
reviewCountnumberNumber of customer reviews
productTypestringProduct type (simple/variable/grouped)
storeUrlstringStore URL used for scraping