Alibaba Scraper | Enterprise Grade
Pricing
from $1.99 / 1,000 results
Alibaba Scraper | Enterprise Grade
Alibaba Pro Search scraper to extract supplier profiles, product listings, company details, contact information, certifications, locations, and ratings from Alibaba Pro Search 📦🏭 Perfect for B2B sourcing, supplier discovery, market research, competitor analysis, and wholesale lead generation.
Pricing
from $1.99 / 1,000 results
Rating
0.0
(0)
Developer
Scrapers Hub
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
12 hours ago
Last modified
Categories
Share
Alibaba.com Pro-Search Scraper
Apify actor that scrapes Alibaba.com AI / pro-search product offers for one or more keywords and returns rich, namespaced records (title, pricing, MOQ, supplier, media, certifications, tracking, and the full raw offer).
How it works (reverse-engineered)
Pro-search data is not in the page HTML. The actor reproduces the browser's 3-hop handshake:
GET /search/page?...→ read__icbu_search_intention_id.GET /search/ai/api?...(SSE stream) → read theasyncServiceparams for theproTextSearchservice.GET /search/api/proTextSearch?...&page=N→ the realmodel.offers[]JSON.
Stack: requests first; automatic fallback to curl_cffi (TLS/JA3
impersonation) when a response looks blocked (challenge page / 403 / empty).
parsel + regex clean the HTML that Alibaba embeds in some titles, parse the
price string, and (optionally) scrape detail pages.
Pricing / currency
Prices are driven by the exit-IP country, so the actor pins an Apify
RESIDENTIAL proxy to shipping_to (e.g. US → $). The proxy username is built
by hand (groups-RESIDENTIAL,country-XX,session-...) because
create_proxy_configuration can silently return datacenter IPs on some plans.
Input
| Field | Type | Notes |
|---|---|---|
queries | array | Keywords, one search each. Required. |
limit | int | Max offers per query (default 20). |
shipping_to | string | Buyer country code → pricing currency (default US). |
enrich_data | bool | Also fetch detail pages (description/specs/JSON-LD). |
ta / supplier_tradeAssurance | bool | Trade Assurance only (ta=y). |
verifiedPro / supplier_verifiedProSupplier | bool | Verified Pro suppliers (verifiedPro=1). |
assessmentCompany / supplier_verifiedSupplier | bool | Verified/assessed suppliers (assessmentCompany=true). |
supplier_manufacturersOnly | bool | Manufacturers only. |
Filter param names were verified live against the search response
filterData.queryKey fields.
Output
One dataset item per offer, e.g.:
{"title": "Portable Air Purifier H13 ...","imageUrl": "https://s.alicdn.com/...jpg","pricing": { "price": "$22.80-29.90", "priceNumeric": 22.8, "currency": "$", "moq": "Min. order: 2 pieces" },"product": { "productId": "1601600586097", "productUrl": "https://www.alibaba.com/product-detail/...html", ... },"product_supplier": { "companyName": "...", "reviewScore": "5.0", ... },"product_media": { "multiImage": ["..."] },"product_certifications": { "certifications": [ ... ] },"product_raw_offer": { /* full untouched offer */ },"metadata": { "id": "...", "seedValue": "Air Purifier", "scrapedTime": "...Z", "pageIndex": 1, "domain": "alibaba.com" }}
Run
$apify run # local (needs APIFY_PROXY_PASSWORD for $ pricing)
Or push to the Apify platform and run with the input schema UI.