Alibaba Product Profile Scraper
Pricing
from $2.99 / 1,000 product details
Alibaba Product Profile Scraper
Extract public Alibaba product profiles, offers, supplier signals, attributes, and media.
Pricing
from $2.99 / 1,000 product details
Rating
0.0
(0)
Developer
w3crawler
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 hours ago
Last modified
Categories
Share
Alibaba Product Details Scraper
This Actor extracts rich, publicly visible product profiles from Alibaba product-detail pages. It combines Schema.org JSON-LD with visible attribute rows and returns normalized product identity, descriptions, offers, supplier signals, ratings, media, attributes, breadcrumbs, and provenance.
It is read-only: no login, private supplier portal, quotation submission, CAPTCHA bypass, fingerprint spoofing, or access-control evasion is attempted. The dataset contains source-backed product profiles only; blocked and unusable pages are counted in the run summary and detailed in logs.
Input examples
Single product:
{"productUrl": "https://www.alibaba.com/product-detail/Public-Steel-Bottle_1600374022155.html","maxItems": 1,"includeMedia": true,"requestTimeoutSecs": 45}
Batch with filters and sorting:
{"productUrls": ["https://www.alibaba.com/product-detail/Public-Steel-Bottle_1600374022155.html","https://www.alibaba.com/product-detail/Another-Public-Product_1600000000000.html"],"minRating": 4,"minReviewCount": 10,"currency": "USD","textQuery": "bottle","sortBy": "rating_desc","deduplicate": true}
Supported sortBy values are relevance, price_asc, price_desc, rating_desc, reviews_desc, supplier_asc, and title_asc. Output controls can omit media, attributes, or supplier details without changing the public fetch contract.
Developer options
The input schema groups bounded operational controls under Developer options:
requestTimeoutSecs(5-300), with legacy aliastimeoutSecsrequestDelayMs(0-15,000)maxConcurrency(1-5)maxRequestRetries(0-10)maxBytes(1,000-15,000,000)
Requests use the standard Fetch API without proxy routing or browser-fingerprint headers. Access challenges and rate limits are terminal; the Actor records the failure and does not attempt a bypass.
Dataset output
Product rows can include:
productId,title,name,description,productUrl,sourceUrl,sku, andmpnprice,priceMin,priceMax,priceFormatted,currency,availability, and MOQ fields when visiblesupplierName,companyName, supplier profile/location/rating, and public supplier badgesratingValue,productRating,reviewCount,soldCountimageUrl,thumbnail,images,imageUrls, andimageCount- visible
attributes,specifications,variations, andbreadcrumbs - public shipping/lead-time and assurance/verification flags when exposed
The dataset does not contain fieldCoverage, dataQuality, recordId, recordType, success, dataAvailable, proxy metadata, request counters, diagnostics, or other Actor-debugging fields. Each row has a public product URL, product ID, visible title, and scrape timestamp.
Example product row:
{"url": "https://www.alibaba.com/product-detail/Public-Steel-Bottle_1600374022155.html","productUrl": "https://www.alibaba.com/product-detail/Public-Steel-Bottle_1600374022155.html","productId": "1600374022155","title": "Public Steel Bottle","description": "A public wholesale bottle.","supplierName": "Public Supplier","price": 12.5,"priceMin": 12.5,"priceMax": 12.5,"currency": "USD","availability": "InStock","productRating": 4.6,"reviewCount": 18,"imageUrl": "https://sc04.alicdn.com/public-bottle.jpg","thumbnail": "https://sc04.alicdn.com/public-bottle.jpg","images": ["https://sc04.alicdn.com/public-bottle.jpg"],"imageCount": 1,"scrapedAt": "2026-09-07T07:40:28.085Z"}
OUTPUT_SUMMARY contains persisted product, operational issue, filter, retry, request, and deduplication counts. Failure details stay in run logs, and the dataset contains source-backed product rows only.
Runs that save product rows and also encounter per-item or optional-output failures finish as SUCCEEDED with dataStatus: PARTIAL. A batch whose source profiles were all successfully filtered out completes with status: SUCCEEDED and dataStatus: NO_RESULTS. A blocked request or extraction failure with no saved product rows is reported as FAILED and exits nonzero.
Offline QA and deployment
For deterministic offline QA, set fixturePath to test/fixtures/product.json in the input. The checked-in .actor/input.json is a single live public product URL intended for cloud runs.
npm cinpm testnpm run checkapify run --input-file fixture-input.json --purge
Checked-in fixtures are for local automated QA only. Live runs use public product URLs.
Run summaries include the required status, runStatus, and dataStatus fields. status and runStatus are SUCCEEDED when source-backed rows were saved or a run completed cleanly with no matches; they are FAILED only when a real failure occurs before any rows are saved. dataStatus is COMPLETE, PARTIAL, NO_RESULTS, or FAILED. Failure details stay in the run logs; key-value summaries retain counts only.