Shein Product Scraper
Pricing
from $1.00 / 1,000 results
Shein Product Scraper
Scrape product details from Shein (us.shein.com) by direct product URL. Returns SKU, product ID, title, price, sale price, images, sizes, colors, and rating.
Pricing
from $1.00 / 1,000 results
Rating
5.0
(10)
Developer
Crawler Bros
Actor stats
11
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Shein Featured Products Scraper
Scrape featured products from Shein regional homepages across 7 countries. Returns product ID, name, URL, prices (sale + retail), image, discount percentage, and category.
What it does
- Fetches the Shein homepage for the selected country
- Parses ~50 server-rendered featured products from the embedded
productListJSON - Per-product bracket-counted JSON extraction tolerates non-JSON fragments in the surrounding page
- Returns prices in local currency (
USD,GBP,EUR,AUD) with sale/retail/discount - Hardcoded residential proxy (Shein hard-blocks datacenter IPs)
Scope note
This scraper returns currently-featured Shein homepage products, not a keyword/URL-based catalog lookup. Shein's category (/dress-c-1727.html) and product detail (/...-p-39521541.html) pages redirect every anonymous session to /risk/challenge?captcha_type=903. Only the root homepage (https://us.shein.com/) is reachable without cookies, so the scraper extracts featured products from the homepage server-side render.
The featured set rotates per session ID, so each run can return different products. Run the scraper multiple times to accumulate variety.
Input
| Field | Type | Default | Description |
|---|---|---|---|
country | enum | US | Shein regional homepage: US, UK, DE, FR, ES, IT, AU |
maxItems | integer | 30 | Maximum featured products to return (1-200) |
Example input
{"country": "DE","maxItems": 20}
Output
Each product is a JSON record with the following fields (missing fields are omitted, never null):
| Field | Type | Always present | Description |
|---|---|---|---|
productId | string | ✓ | Shein goods_id |
title | string | ✓ | Product name |
url | string | ✓ | Product page URL |
countryCode | string | ✓ | 2-letter country code |
scrapedAt | string | ✓ | UTC ISO 8601 scrape timestamp |
mainImage | string | — | Main product image URL |
currency | string | — | Local currency (USD, GBP, EUR, AUD) |
salePrice | number | — | Current sale price |
salePriceText | string | — | Formatted price with currency symbol |
retailPrice | number | — | Original retail price (before discount) |
discountPercentage | number | — | Discount % off retail |
catId | string | — | Shein category ID |
brand | string | — | Brand name if present |
images | array | — | Additional product images |
Sample output
{"productId": "323288283","title": "Amplova Women's Slogan Print Yellow Bandeau Top And Low Waist Mini Shorts Set","url": "https://us.shein.com/-p-323288283.html","countryCode": "US","mainImage": "https://img.ltwebstatic.com/v4/j/pi/2025/12/11/af/1765421201aae6799000f50a389fe2f87ee624a82d_thumbnail_405x552.jpg","currency": "USD","salePrice": 18.23,"salePriceText": "$18.23","retailPrice": 26.39,"discountPercentage": 31,"catId": "1780","scrapedAt": "2026-04-14T08:42:22Z"}
FAQ
Do I need a proxy? No configuration needed — a residential proxy is hardcoded and applied automatically. Shein blocks direct datacenter access.
Why featured products only, not keyword search?
Shein blocks category and product detail pages with a /risk/challenge?captcha_type=903 redirect. Only the root homepage is reachable without pre-seeded cookies or a captcha-solver, so this scraper extracts the featured products embedded in the homepage server-side render.
How many products per run?
The homepage ships 6-60 products depending on session / IP. The scraper returns up to maxItems (default 30).
Do different countries return different products?
Yes. Each regional site (us.shein.com, uk.shein.com, etc.) has its own feature set with local pricing and currency.
Is the data fresh? Every run fetches the live homepage and the featured set rotates per session, so repeated runs build up a rolling catalog.
Use cases
- Daily trending monitor — track what Shein is featuring on each regional homepage
- Price sampling — accumulate a rolling catalog of Shein prices across countries
- Market research — monitor product themes / categories across 7 markets
- Cross-market comparison — compare US vs EU featured picks for the same brand
Notes
- Pricing is configured in the Apify UI (pay-per-result).
- The daily Apify test run uses
country=US,maxItems=5. - Parser:
_iter_product_blockswalks every{"goods_id":"..."}object with a bracket counter +json.loads, tolerant of nested JSON fragments in the enclosing array.