SHEIN Product Scraper
Pricing
from $21.00 / 1,000 results
SHEIN Product Scraper
Search SHEIN by keyword, or fetch any product by URL or goods ID. Clean JSON: price (local + USD), full-res images, colour variants, rating, stock, size-fit. Proxyless, 40+ regions, 100% success in benchmark. Discovery and detail in one actor.
Pricing
from $21.00 / 1,000 results
Rating
5.0
(2)
Developer
Magpie
Maintained by CommunityActor stats
1
Bookmarked
19
Total users
4
Monthly active users
a day ago
Last modified
Categories
Share
SHEIN Product Scraper — search, discover & extract SHEIN product data
Get clean, structured SHEIN product data two ways: search by keyword to discover whole product lists, or pass a product URL / goods ID for a single product — in any region and currency. Built for reliability: when other SHEIN scrapers break, this one keeps working.
Benchmark — 100-product run: ✅ 100% success (100/100) · ⚡ ~48 products/sec · 🌍 40+ SHEIN storefronts · 🧹 clean ~22-field schema · 🖼️ full-resolution images
Perfect for price monitoring, dropshipping & reselling, competitor research, catalog enrichment, and fashion-trend analytics.
Two ways in — one clean output
- 🔎 Discovery (search): give it keywords (
"summer dress","cargo pants") and get back a full list of matching products — price, images, rating, stock and more. No URLs needed. - 🎯 Detail (URL / ID): give it exact product URLs or
goods_ids and get the full detail record for each.
Both return the same clean product schema, so one pipeline handles both.
✨ Why this scraper
- Search and detail. The only SHEIN actor that does both keyword discovery and URL/ID lookup — most do only one.
- It actually works. 100% success in our 100-product benchmark — no empty runs.
- Every region. UK, US, EU, LATAM, MENA, APAC — 40+ SHEIN storefronts, correct local price & currency.
- Clean output. A tidy ~22-field record — no internal junk, ready for a sheet, DB, or app.
- Full-resolution images — the complete gallery plus colour-variant swatches.
- Fast & cheap. Batched fetching, ~48 products/second.
💷 Pricing
Pay per product record — you're billed only for products actually returned, never for empty results. Free trial included so you can test before you spend.
| Event | What you get | Price |
|---|---|---|
| Product | one product from a keyword search — price, images, rating, stock, discount | $5 / 1,000 |
| Product (full detail) | one product from a URL / goods ID, or a search result with fullDetail on — adds size-fit %, full gallery, colour variants, review count | $10 / 1,000 |
Search is the cheap, high-volume way to pull catalogs; full detail is the premium, targeted lookup. A search of 500 products costs $2.50; 50 exact product lookups cost $0.50.
📥 Input
| Field | Type | Description |
|---|---|---|
searchTerms | string[] | Discovery. Keywords to search — one product list per term ("summer dress", "cargo pants"). |
maxProductsPerTerm | integer | How many products to return per search term (default 100). |
fullDetail | boolean | For search results, also fetch each product's full detail (size-fit %, full gallery, colour variants, reviews). Billed at the full-detail rate. Default false. |
sort | string | Search sort: empty = recommended, 10 = price low→high, 11 = price high→low. |
productUrls | string[] | Detail. SHEIN product URLs, any region (www.shein.co.uk, us.shein.com, de.shein.com, …). |
goodsIds | string[] | Detail. SHEIN goods_id values — alternative/addition to URLs. Pair with country. |
country | string | ISO country for pricing/locale (GB, US, DE, FR, …). Sets the region for search; overrides the URL's region for detail; required for goodsIds without URLs. |
currency | string | Optional currency override (GBP, USD, EUR, …). |
maxItems | integer | Stop after N records total. |
proxyConfiguration | object | Apify Proxy (default) — recommended for larger runs. |
Example input
Search by keyword (discovery):
{"searchTerms": ["summer dress", "cargo pants"],"maxProductsPerTerm": 100,"country": "GB"}
By product URL or ID (detail):
{"productUrls": ["https://www.shein.co.uk/...-p-209758798.html","https://us.shein.com/...-p-47307085.html"],"country": "GB","proxyConfiguration": { "useApifyProxy": true }}
Or fetch by ID:
{ "goodsIds": ["209758798", "47307085"], "country": "US" }
📤 Output
One clean record per product, pushed to the dataset (export JSON / CSV / Excel, or pull via the Apify API). See ./examples/example-output.json for a full real sample.
| Field | Description |
|---|---|
id, sku, spu | Product / SKU / product-family identifiers |
url | Canonical product URL |
title | Product name |
category, categoryId | Category |
price, priceFormatted | Current price (number + display string) |
listPrice, listPriceFormatted, discountPercent | Original price + discount (when on sale) |
currency, priceUsd | Currency + USD price (cross-region compare) |
inStock | Availability |
images | Full-resolution image gallery |
colorVariants | Colour-variant swatch images |
color | Colour (when labelled) |
rating, reviewsCount | Ratings & review count |
fit | Size-fit breakdown (true-size / large / small %) |
videoUrl | Product video (when present) |
storeCode | Marketplace store/seller code |
region | { country, currency } |
scrapedAt | ISO timestamp |
{"id": "209758798","sku": "sz25092919833193799","title": "Sweetra Women's Oblique Shoulder Flounce Bodycon Dress","url": "https://www.shein.co.uk/...-p-209758798.html","category": "Women Mini Dresses","price": 9.49,"priceFormatted": "£9.49","listPrice": 11.99,"discountPercent": 20,"currency": "GBP","priceUsd": 12.54,"inStock": true,"images": ["https://img.ltwebstatic.com/...jpg", "..."],"colorVariants": ["https://img.ltwebstatic.com/...jpg", "..."],"rating": 4.68,"reviewsCount": 94,"fit": { "trueSize": "88%", "large": "0%", "small": "12%" },"region": { "country": "GB", "currency": "GBP" },"scrapedAt": "2026-06-26T11:15:20.505Z"}
🚀 How to run
- In the app: set the input, click Start, download from the dataset.
- Via API / CLI: call the actor with the input above; read results from the dataset. Integrate with Make, Zapier, n8n, or your own code.
❓ FAQ
Which regions are supported? 40+ SHEIN storefronts — UK, US, all major EU,
LATAM, MENA, and APAC. Set country (or just use a regional URL) and prices come
back in the correct local currency, plus a USD value for easy comparison.
URLs or IDs? Either. Paste product URLs, or pass goods_id values with a
country. Mix both.
How fast / how much can I scrape? ~48 products/second in our benchmark, with batching. Suitable for one-off lookups up to large catalog runs.
How fresh is the data? Live — fetched at request time (note scrapedAt).
Is the output stable? Yes — a fixed, clean schema (above), so it won't break your pipeline.
Do I need a proxy? Apify Proxy is on by default and recommended for larger runs.
Support? Open an issue on the actor page — fast turnaround.
Is scraping SHEIN allowed? This actor collects publicly available product information. You are responsible for using the data in line with SHEIN's terms and applicable law.
🔗 More scrapers by Magpie
Same proxyless, clean-JSON approach, other data sources:
- App Reviews Scraper — Google Play + App Store reviews & app metadata
- Google Trends Scraper — interest over time & region, related queries, trending searches
- ATS Job Feed Scraper — live jobs from Greenhouse, Lever, Ashby & SmartRecruiters
For bulk e-commerce product data across 20+ retailers in one schema, see Cartpie.
Tags: shein scraper, shein api, shein product data, shein price scraper, shein price tracker, fashion data, ecommerce scraper, product data api.