OrbTop

Shein Product Detail & Variants Scraper

ECOMMERCE

Independent tool. Trademarks referenced on this page are the property of their respective owners and are used only to identify the public website this tool reads. No affiliation or endorsement.

Shein Product Detail & Variants Scraper

Extract full product detail from Shein PDPs: all color/size variants with per-variant stock, pricing, size guide, composition, ratings, and images. Supports us.shein.com and regional storefronts. Built for apparel-catalog and dropshipping-import workflows.

What you get

Each scraped PDP produces one dataset record with:

Field Type Description
goods_id string Shein internal product id (numeric string, extracted from PDP or URL)
goods_sn string Shein product SKU/style code (e.g. sw2212215742)
product_url string Canonical product page URL
product_name string Product display title
brand string Brand name (Shein sub-brand where available)
category_path string Breadcrumb category path (e.g. Women / Dresses / Maxi Dresses)
description string Product description text
sale_price number Current discounted sale price
retail_price number Original / retail price before discount
discount_pct number Discount percentage off retail price (0–100)
currency string Currency code (e.g. USD, GBP, EUR)
in_stock boolean True if at least one variant is available
stock_hint string Low-stock banner text (e.g. "Almost Sold Out") — null if none
colors array Color option objects — {color_name, thumb_url, goods_id_for_color}
sizes array Size objects — {size_label, size_measurements, in_stock}
size_fit string Size fit feedback summary (e.g. "Runs small", "True to size")
size_guide object Size guide chart — {unit, rows:[{size, bust, waist, hip, length}]}
images array Product image URLs (main + all gallery images)
video_url string Product video URL — null if none
material string Primary material name
composition string Full fabric composition (e.g. 95% Polyester, 5% Spandex)
care_instructions string Care instruction text
review_count integer Total number of customer reviews
avg_rating number Average star rating (0–5)
rating_breakdown object {true_to_size_pct, quality_pct, shipping_speed_pct}
seller_name string Seller/store name — null for standard Shein listings
is_flash_sale boolean True if the product is on a flash/limited-time sale
flash_sale_price number Flash-sale price if active — null otherwise
flash_sale_end string ISO 8601 end timestamp of the flash sale — null if not a flash sale
scraped_at string ISO 8601 timestamp when this record was scraped
region string Storefront region code (us / uk / de / etc.)

Input

Parameter Type Required Description
productUrls array Yes List of Shein PDP URLs to scrape. Each entry is {"url": "https://us.shein.com/...-p-<id>.html"}. URLs must end in -p-<id>.html.
maxItems integer Yes Maximum number of records to return.
region string No Storefront region code (e.g. us, uk, de). Auto-detected from the URL if omitted.

Example input

{
  "productUrls": [
    {"url": "https://us.shein.com/Adidas-M-Lux-Tiro-P-Polo-Comfortable-Short-Sleeve-T-Shirt-Tops-Men-p-494522693.html"},
    {"url": "https://us.shein.com/Shirts-Real-Me-Cotton-Top-Tees-Summer-Street-Style-Short-Sleeve-Shirt-Harajuku-Casual-Tshirt-P-Shirts-Crewneck-Summer-Tops-Casual-p-505855831.html"}
  ],
  "region": "us",
  "maxItems": 100
}

Supported URLs

  • https://us.shein.com/...-p-<id>.html
  • https://shein.co.uk/...-p-<id>.html
  • https://shein.de/...-p-<id>.html
  • Any *.shein.* or shein.com* hostname with a -p-<id>.html path

URLs that do not match the -p-<id>.html pattern are skipped with a warning.

Resuming a large crawl

To continue a run that was interrupted or hit maxItems before finishing:

  1. Find resumeCursor in the previous run's OUTPUT key-value store entry.
  2. Pass it as resumeCursor in the new run's input alongside the same productUrls list.

The actor reopens the previous run's request queue, skipping pages already processed — no duplicate charges, no duplicate records.

Note: resumption only benefits runs that did not complete in a single execution. Single-URL or fully-completed runs do not need it.

Notes

  • Reliable access to Shein PDPs — JS rendering and anti-bot detection are handled for you.
  • A read-through cache reduces redundant upstream fetches on re-runs of the same URLs.
  • Anti-bot challenge pages (fetch reports success but carries no product data) are detected and skipped automatically.
  • Price and stock data reflects the state at scrape time. For price monitoring use the companion Shein Product Monitor actor.