Shopify Scraper (PPE) avatar
Shopify Scraper (PPE)

Pricing

Pay per event

Go to Apify Store
Shopify Scraper (PPE)

Shopify Scraper (PPE)

Shopify Scraper (PPE) is a professional-grade crawling tool designed to extract high-fidelity product data from any e-commerce store built on the Shopify platform. This version uses the **Pay-Per-Event** pricing model, meaning you only pay for the products and collections you actually scrape.

Pricing

Pay per event

Rating

5.0

(1)

Developer

Autofactor

Autofactor

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Shopify Scraper (PPE) is a professional-grade crawling tool designed to extract high-fidelity product data from any e-commerce store built on the Shopify platform. This version uses the Pay-Per-Event pricing model, meaning you only pay for the products and collections you actually scrape.

Why Use Shopify Scraper (PPE)?

  • 💵 Cost-Effective: Pay only for results—no flat fees or wasted compute on empty runs.
  • 📊 Market Research: Analyze competitor pricing, inventory, product variants, and descriptions to sharpen your strategy.
  • 📈 Trend Monitoring: Track new product launches and stock status changes across multiple brands in real-time.
  • 🗂️ Data Aggregation: Build comprehensive product catalogs by aggregating data from various Shopify-based stores.
  • 🎯 Marketing Insights: Understand how successful brands structure their metadata, tags, and categories.

Key Features

  • 💰 Pay-Per-Event Pricing: Only pay for the products and collections you actually scrape—no wasted compute costs.
  • 🔍 Search Support: Find products by keyword using the built-in search functionality.
  • 🎁 Product Recommendations: Optionally fetch recommended products for each item (configurable limit).
  • 🚀 Store-wide Extraction: Capable of crawling an entire store's catalog, from collections to individual products.
  • 🎯 Precision Targeting: Fetch specific collections or singular product URLs with surgical precision.
  • 💱 Currency Normalization: Automatically handles currency selection and formats prices (multiplied by 100) to ensure financial accuracy without floating-point errors.
  • 📦 Comprehensive Data: Extracts everything: titles, descriptions, images, options (size/color), variants, and real-time stock status.
  • 🛡️ Resilience: Includes logic to bypass common gateway restrictions and handle "InStock"/"OutOfStock" parsing robustly.

🔄 Need to monitor prices daily? Check out our Shopify Scraper (Rental Model) for just $5/month. It's designed for scheduled, recurring monitoring.

Important Note

On certain Shopify websites, multiple SKUs may be visually merged into a single product page. Please be aware that this scraper treats each SKU as an individual product entry and does not perform any merging of these SKUs.

How it Works

1. Verification

Before running the scraper, verify your target is a Shopify store:

  1. Navigate to https://<domain>/admin (e.g., https://gymshark.com/admin).
  2. If you see a Shopify login page, the site is compatible.

2. Configuration

The scraper accepts a JSON input defining the target URLs and scraping behavior.

ParameterTypeRequiredDescription
startUrlsArrayYesA list of URLs to scrape (Homepage, Collection, or Product URLs).
proxyObjectYesProxy configuration. Residential proxies are highly recommended to avoid blocks.
maxRequestsPerCrawlIntegerNoLimit the number of products scraped. Set to 0 for unlimited (default 100).
maxRecommendationsPerProductIntegerNoNumber of recommended products to fetch per product. Set to 0 to disable (default 0). Max 20.
queryStringNoSearch query to find specific products.

Input Examples

Use CaseInput JSON
Scrape all products from a store{ "startUrls": [{ "url": "https://kith.com" }], "maxRequestsPerCrawl": 0, "proxy": { "useApifyProxy": true } }
Scrape products from a collection{ "startUrls": [{ "url": "https://kith.com/collections/kith-tops" }], "maxRequestsPerCrawl": 0, "proxy": { "useApifyProxy": true } }
Scrape a single product page{ "startUrls": [{ "url": "https://kith.com/products/kith-williams-iii-hoodie-black" }], "proxy": { "useApifyProxy": true } }
Search products by keyword{ "startUrls": [{ "url": "https://kith.com" }], "query": "hoodie", "proxy": { "useApifyProxy": true } }
Fetch product with recommendations{ "startUrls": [{ "url": "https://kith.com/products/kith-williams-iii-hoodie-black" }], "maxRecommendationsPerProduct": 10, "proxy": { "useApifyProxy": true } }
Limit total scraped results{ "startUrls": [{ "url": "https://kith.com" }], "maxRequestsPerCrawl": 100, "proxy": { "useApifyProxy": true } }
Scrape with custom currency{ "startUrls": [{ "url": "https://kith.com/collections/kith-tops?currency=EUR" }], "proxy": { "useApifyProxy": true } }

3. Output

Data is stored in the default dataset. The scraper outputs either Product or Collection objects.


Troubleshooting

IssuePossible CauseSolution
0 Results FoundThe site may not be Shopify-based or has strong anti-bot protection.Verify with the /admin trick. Try using residential proxies.
Access Denied / 403Your IP has been flagged.Enable useApifyProxy and ensure you have sufficient proxy quota.
Incorrect PriceCurrency mismatch or raw integer format.Remember prices are x100 (e.g., 2000 = 20.00). Ensure ?currency=XYZ param is used if supported.

TODO

  • Review fetch support
  • Real stock monitoring
  • 7/30 day sales estimation