Shopify Product Scraper
Pricing
from $3.00 / 1,000 results
Shopify Product Scraper
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
Oleksii Tereshchenko
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Shopify Product & Catalog Spy Scraper
🛍️ Extract full product catalogs, variants, pricing, discounts, stock status, SKUs, high-res images, and tags from ANY Shopify store. Ultra-fast native API extraction.
🚀 Why Use This Actor?
There are over 4.5 million active Shopify stores worldwide. Whether you are an e-commerce brand, a dropshipper, a market researcher, or building a price intelligence tool, scraping Shopify stores shouldn't be slow or blocked by browser captchas.
Shopify Product & Catalog Spy Scraper connects directly to the native Shopify catalog endpoints:
- ⚡ Lightning Fast (100+ Products / sec): Uses direct JSON pagination (
/products.json?limit=250&page=N) instead of heavy, slow headless browsers. - 💰 Price & Discount Intelligence: Automatically calculates lowest price, highest price, compare-at price (MSRP/old price), and discount status (
isOnSale: true). - 📦 Deep Variant Breakdown: Captures every variant with individual SKUs, prices, titles (e.g.
Black / L), and real-time stock availability. - 📸 High-Resolution Images: Exports full CDNs of high-res product photos ready for catalog import.
- 🎯 Domain or Collection Targeting: Scrape an entire store or target a specific category URL (e.g.
/collections/sneakers). - 🔍 Keyword & Stock Filtering: Filter products by keyword (
hoodie,shoes,leather) or only export in-stock products.
🎯 Use Cases
- Dropshipping & Product Research: Find winning products, trending tags, and profitable price margins.
- Competitor Price Monitoring: Track when competitors discount items or change their pricing strategy.
- Catalog Migration & Backup: Export product data with images and variants to CSV/JSON to import into WooCommerce, Amazon, or another Shopify store.
- Inventory Tracking: Monitor stock availability across popular apparel, electronics, and DTC brands.
📥 Input Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
startUrls | Array | ["https://gymshark.com"] | Shopify store homepages or collection URLs to scrape. |
maxProducts | Integer | 100 | Maximum number of products to export per store (up to 5000). |
includeVariants | Boolean | true | Extract full variant data (SKU, individual prices, stock). |
onlyInStock | Boolean | false | Only export products that have at least one variant available. |
searchKeyword | String | "" | Optional keyword to filter products by title, vendor, tags, or type. |
Example Input JSON:
{"startUrls": [{ "url": "https://gymshark.com/collections/hoodies-jackets" }],"maxProducts": 200,"includeVariants": true,"onlyInStock": true,"searchKeyword": "black"}
📤 Output Dataset Format
Each item in the dataset provides complete e-commerce product intelligence:
{"storeUrl": "https://gymshark.com","productId": 6805093875914,"title": "Gymshark Everyday Holdall Medium - Black","handle": "gymshark-medium-everyday-holdall-black-ss23","url": "https://gymshark.com/products/gymshark-medium-everyday-holdall-black-ss23","vendor": "Gymshark","productType": "Bags","tags": ["accessories", "bags", "black-staples"],"minPrice": 54.0,"maxPrice": 54.0,"compareAtPrice": 60.0,"isOnSale": true,"isAvailable": true,"variantsCount": 1,"variants": [{"id": 39787826708682,"title": "One Size","price": 54.0,"compareAtPrice": 60.0,"sku": "GS-BAG-BLK","available": true}],"images": ["https://cdn.shopify.com/s/files/1/0156/6146/files/images-EverydayHoldallMBlack.jpg"],"publishedAt": "2026-09-16","scrapedAt": "2026-09-17T15:29:32.839Z"}
🐍 Python Integration
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")# Run the Actorrun = client.actor("vujofix/shopify-product-scraper").call(run_input={"startUrls": [{"url": "https://allbirds.com"}],"maxProducts": 150,"onlyInStock": True})# Iterate over extracted productsfor product in client.dataset(run["defaultDatasetId"]).iterate_items():print(f"{product['title']} - ${product['minPrice']} (Variants: {product['variantsCount']})")
💰 Pricing
- Pay-Per-Event: $3.00 / 1,000 products
- Scraping 500 products costs only $1.50, saving hours of manual data entry and scraper maintenance.
🛡️ License
Apache-2.0