AliExpress Scraper: Products, Reviews & Stores
Pricing
from $0.99 / 1,000 products
AliExpress Scraper: Products, Reviews & Stores
Scrape AliExpress products, prices, variants, stock, reviews, sellers, shipping, supplier stores, and monitor product changes with localized data.
Pricing
from $0.99 / 1,000 products
Rating
0.0
(0)
Developer
Kenneth Lingo
Maintained by CommunityActor stats
1
Bookmarked
58
Total users
12
Monthly active users
4 days ago
Last modified
Categories
Features
Share
AliExpress product scraper
Turn AliExpress search results, product pages, reviews, and supplier stores into structured data. AliExpress Scraper: Products, Reviews & Stores supports keyword product research, exact product details, variants and SKU stock, seller and shipping data, buyer reviews, store catalogs, and recurring price or inventory monitoring.
Run it in the Apify Store, call it as an AliExpress products API, or connect it to an AI agent through Apify MCP. On Apify cloud, proxy routing is managed for you—no customer-provided proxy or proxy setup is required.
| Need | Supported |
|---|---|
| Product search | Yes |
| Full product details | Yes |
| Variants & SKU stock | Yes |
| Reviews | Yes |
| Supplier/store discovery | Yes |
| Price & stock monitoring | Yes |
| Localization | Yes |
| Resume previous datasets | Yes |
| Customer-provided proxy required | No |
Use one Actor instead of assembling separate AliExpress product scraper, reviews scraper, store scraper, variants scraper, and price monitor workflows. Results are available as JSON, CSV, Excel, XML, RSS, and through the Apify API.
Quick start — Run the scraper and download results
No coding required! Run directly on Apify using your available credits.
- Open the Input tab.
- Select a ready-made example or choose your scraping mode.
- Enter your search keywords, product URLs, or store URL.
- Set a small result limit (10–20 recommended for testing).
- Click Start and wait for the run to finish.
- Open the Output tab to view your scraped data.
- Export your results as JSON, CSV, or Excel.
Where do my results go?
Your results are stored directly in Apify. You do not need to visit another website.
Open your completed run and navigate to its dataset to download the complete results.
What can I try?
All five workflows are available:
- Product search and discovery
- Full product details, variants, and SKU inventory
- Buyer reviews and photos
- Supplier and store catalogs
- Price and inventory monitoring
For monitoring, run the same configuration again later to detect changes.
Using the API?
Start the Actor, wait for completion, and retrieve its output dataset using the Apify API.
You can also create scheduled tasks for recurring monitoring.
What data can you scrape?
| Data or workflow | Available output |
|---|---|
| Search products | Product ID and URL, title, images, price, original price, discount, rating, sold counts, category, badges, Choice/sponsored flags, and search provenance |
| Prices | Current price, ranges, original price, currency, and discount where AliExpress exposes them |
| Variants | Product option groups and values |
| SKU-level price | Per-SKU sale/original price, currency, and purchase limits where exposed |
| Inventory | Product stock plus available inventory and saleability for individual SKUs where exposed |
| Seller/store | Store and seller IDs, names, company/profile fields, followers, positive rate, and establishment date when available |
| Shipping | Ship-from country, destination, methods, costs, and estimated delivery fields when exposed |
| Specifications | Product attributes, brand, category path, promotions, wishlist count, video, and availability |
| Description | Optional bounded product description HTML and plain text |
| Gallery | Main image, additional search images, and full detail gallery |
| Reviews | Rating, text and translation, country, date, SKU, images/video, helpful votes, seller reply, and follow-up feedback |
| Monitoring | NEW, UPDATED, and optionally UNCHANGED product state with before/after changes |
| Supplier/store catalog | Products accessible from an AliExpress store plus supplier metadata and catalog position |
| Localization | Requested ship-to country, currency, and locale; every row reports what AliExpress actually served |
AliExpress product search
Use mode: "search" with one or more searchQueries, or provide AliExpress keyword/category URLs in startUrls. Sort by relevance, orders, ascending price, or descending price. Filter by price, rating, sold count, discount, Choice, sponsored status, free-shipping cards, and ship-from country.
This workflow is useful for AliExpress product research, competitor assortment analysis, and dropshipping product research. maxResults is a hard product-output cap, so run size and spend remain predictable.
{"mode": "search","searchQueries": ["wireless earbuds"],"sortBy": "orders","maxResults": 20}
AliExpress product details, variants & stock
Use mode: "details" and provide product URLs, numeric product IDs, regional URLs, or official a.aliexpress.com and s.click.aliexpress.com share links in productUrls. Direct product inputs automatically request full details.
A successful rich product record can include variant axes, AliExpress SKU IDs, SKU-level prices, available inventory, total stock, seller details, specifications, gallery images, shipping options, ETA, category path, promotions, video, and an optional description. This makes the Actor usable as an AliExpress variants scraper, SKU scraper, inventory scraper, stock scraper, and price scraper.
{"mode": "details","productUrls": ["https://www.aliexpress.com/item/3256811621288203.html"],"includeDescription": true}
Rich detail is best-effort. AliExpress applies product-specific challenges, so full detail coverage is not guaranteed — see Reliability and limitations for the honest success picture. Failed direct detail lookups are emitted as explicit diagnostic rows and are not billed as successful product-detail results; successful search or store data remains available when enrichment fails. A failed direct/store detail is never an empty row: the record still carries the title, image and, where available, rating and review count from the public product page (basicsCaptured, basicsSource).
A full detail takes roughly 1-60 seconds per product depending on how much blocking AliExpress applies during the run. For detail runs, keep maxResults at 100 or fewer, or set a longer run timeout — the run always stops early enough to save everything it collected.
Regional product ID families
AliExpress product IDs are region-dependent: the US storefront (aliexpress.us) issues 3256... IDs while other markets issue 1005... IDs for the same product. You can pass either form — the Actor maps it to the right form for your market automatically. Product rows expose productId (the requested/market form), productIdGlobal, and productIdUs, so downstream matching is stable across markets. Monitoring and resume keys canonicalize on the global ID; history written by older builds with raw IDs still resolves.
AliExpress reviews scraper
Use mode: "reviews" for an AliExpress review API workflow. Review records are separate dataset rows with recordType: "review" and can contain the original and translated review, stars, reviewer country, review date, variant/SKU, buyer photos or video, helpful votes, seller replies, and follow-up feedback.
Filter by minimum/maximum rating, reviewer country, keyword, date, or media presence. Set onlyNewReviews: true to persist accepted review identities and emit only reviews not seen in earlier runs within the fetched review window. Use hideReviewerName: true when buyer display names are unnecessary.
{"mode": "reviews","productUrls": ["3256807852898873"],"maxReviewRating": 2,"reviewsWithMediaOnly": true,"maxReviewsPerProduct": 50,"maxTotalReviews": 50}
AliExpress store and supplier scraper
Use mode: "store" with an AliExpress store URL or numeric store ID. The Actor collects unique accessible catalog products, their store position, and available supplier metadata. It can optionally enrich those products with details, reviews, or monitoring data.
{"mode": "store","storeUrls": ["https://www.aliexpress.com/store/1101705614"],"storeSort": "orders","maxResults": 100}
Store paging is bounded by maxResults and maxStoreScrolls. Dynamic stores do not always expose their complete catalog, so the Actor reports what it captured rather than claiming catalog completeness. This workflow covers common AliExpress store scraper, supplier scraper, and seller scraper use cases.
Some stores' catalog requests get blocked by AliExpress at times. When that happens the run fails with a named reason instead of an empty result — retrying later usually works. The Actor retries through alternate routes automatically. When a non-US catalog is collected through an alternate route, those rows carry storeCatalogEgress set to the alternate route's market with card prices left empty, and detail enrichment prices items in your market.
AliExpress price & stock monitoring
Use mode: "monitor" for an AliExpress price monitor or stock monitor. The Actor stores a compact snapshot in your Apify account and compares the next run with it. It tracks prices, currency, sold count, ratings, review count, total stock, SKU prices and inventory, shipping, and seller metadata where available.
NEW— no previous snapshot existed.UPDATED— one or more tracked values changed.UNCHANGED— stable; suppressed by default unlessemitUnchanged: true.
{"mode": "monitor","productUrls": ["3256811621288203", "1005012536331708"],"emitUnchanged": false}
For the most value, save this input as an Apify Task and attach a Schedule. Monitoring state and datasets remain in the running customer's Apify account.
AliExpress scraper API
Public Actor identity: studio_sussex/aliexpress-product-scraper
Stable Actor ID: i6VUtUn1ch1gwjEzX
Use the Actor through the official Python or JavaScript client, raw REST API, Apify CLI, webhooks, schedules, or automation platforms. Copyable API examples for Python, JavaScript, cURL, and AI/MCP clients follow below.
Store your Apify token in the APIFY_TOKEN environment variable. Never hard-code it or commit it.
Use the AliExpress scraper with Python
Install the current official client:
pip install apify-clientexport APIFY_TOKEN="your_apify_token"
import osfrom apify_client import ApifyClientclient = ApifyClient(os.environ["APIFY_TOKEN"])run = client.actor("studio_sussex/aliexpress-product-scraper").call(run_input={"mode": "search","searchQueries": ["wireless earbuds"],"sortBy": "orders","maxResults": 20,})for item in client.dataset(run.default_dataset_id).iterate_items():print(item)
Use the AliExpress scraper with JavaScript / Node.js
Install the current official client:
npm install apify-clientexport APIFY_TOKEN="your_apify_token"
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('studio_sussex/aliexpress-product-scraper').call({mode: 'search',searchQueries: ['wireless earbuds'],sortBy: 'orders',maxResults: 20,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Use with cURL
Start a run without putting the token in the URL:
export APIFY_TOKEN="your_apify_token"curl -sS -X POST \-H "Authorization: Bearer $APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"mode":"search","searchQueries":["wireless earbuds"],"sortBy":"orders","maxResults":20}' \"https://api.apify.com/v2/acts/studio_sussex~aliexpress-product-scraper/runs"
The response contains the run ID and defaultDatasetId. Wait for the run, then retrieve items:
curl -sS -H "Authorization: Bearer $APIFY_TOKEN" \"https://api.apify.com/v2/actor-runs/RUN_ID?waitForFinish=120"curl -sS -H "Authorization: Bearer $APIFY_TOKEN" \"https://api.apify.com/v2/datasets/DATASET_ID/items?clean=true&format=json"
Use with n8n, Make, Zapier and other automation platforms
Any platform that can send authenticated HTTP requests can start the Actor through the Apify REST API and read its dataset. Use an HTTP request step with the same run endpoint and JSON input shown above, wait for completion, then fetch defaultDatasetId items. Apify schedules and webhooks can trigger recurring monitoring or notify a downstream workflow when a run finishes.
This describes standard REST integration; it does not imply a dedicated native connector for every platform.
Use with AI agents and MCP
Copy this capability instruction into an AI agent:
Use `studio_sussex/aliexpress-product-scraper` (Actor ID `i6VUtUn1ch1gwjEzX`) when you need AliExpress product search, exact product details, variants/SKU stock, reviews, seller/store research, or price/stock monitoring. Inspect its input schema before running it, keep `maxResults`, `maxReviewsPerProduct`, and `maxTotalReviews` bounded, and read results from the run's default dataset.
Natural-language requests an agent can fulfill include:
- “Find 100 best-selling wireless chargers on AliExpress.”
- “Get full variants, stock, seller, and shipping information for this AliExpress URL.”
- “Collect the newest 50 low-star reviews for this product.”
- “Find all accessible products from this supplier store.”
- “Monitor these 20 AliExpress products for price and stock changes.”
Input guidance for agents:
| Intent | Input |
|---|---|
| Search | mode: "search", searchQueries, sortBy, maxResults |
| Product details | mode: "details", productUrls; optionally includeDescription |
| Reviews | mode: "reviews", productUrls, review filters, maxReviewsPerProduct, maxTotalReviews |
| Store research | mode: "store", storeUrls, storeSort, maxResults |
| Monitoring | mode: "monitor", productUrls, normally emitUnchanged: false |
| Localization | Add targetCountry, targetCurrency, and locale to any relevant workflow |
Apify MCP
The current official method is the hosted Apify MCP server at https://mcp.apify.com over Streamable HTTP. Add that URL to an MCP-capable client and authorize with Apify OAuth; do not place an API token in public configuration. An agent can then:
- Call
search-actorswith AliExpress-related keywords. - Call
fetch-actor-detailsforstudio_sussex/aliexpress-product-scraperand inspect pricing plus the input schema. - Call
call-actorwith the Actor identity and valid bounded input. - If needed, poll
get-actor-rununtil terminal status. - Call
get-dataset-itemsusing the returned dataset ID.
Example request:
Using Apify MCP, inspect `studio_sussex/aliexpress-product-scraper`, estimate the paid run from its current pricing, then ask for approval before running it. After approval, find 20 wireless earbuds sorted by orders and return the dataset items.
For a minimal client that loads this Actor directly, Apify supports tool selection in the MCP URL:
https://mcp.apify.com?tools=studio_sussex/aliexpress-product-scraper
Running Actors requires authentication. Actor discovery and schema inspection can be performed with Apify's anonymous discovery tools, but execution and dataset access require an authorized Apify account.
Key inputs
| Input | Purpose |
|---|---|
mode | Auto, search, details, reviews, monitor, or store workflow |
searchQueries | Keyword searches |
startUrls | AliExpress keyword-search or category-result URLs |
productUrls | Exact product URLs/IDs or official AliExpress short/share links |
storeUrls | Store URLs or numeric store IDs |
maxResults | Hard cap on emitted product rows |
sortBy | Relevance, orders, price ascending, or price descending |
minPrice, maxPrice, minRating, minSold | Product filters |
minDiscountPercent, choiceOnly, freeShippingOnly | Additional discovery filters |
includeSponsored | Include or exclude sponsored listings |
targetCountry, targetCurrency, locale | Requested market and localization (UK accepted as GB; RU unsupported — aliexpress.ru is a separate storefront; when omitted, the market is inferred from regional product/store URL hints) |
includeDetails, includeDescription | Rich product and description enrichment |
includeReviews | Combine reviews with another workflow |
minReviewRating, maxReviewRating, reviewCountry | Review filters |
reviewsWithMediaOnly, reviewKeyword, reviewsSinceDate | Focus review collection |
onlyNewReviews | Emit only previously unseen reviews within the fetched window |
monitorChanges, emitUnchanged | Change monitoring behavior |
resumeDataset | Skip products already completed in a previous dataset |
maxReviewsPerProduct, maxTotalReviews | Review output and spending guards |
detailConcurrency, maxStoreScrolls | Bounded detail/store work |
The Input tab is the source of truth for all fields, defaults, limits, and descriptions.
Output datasets and views
The default dataset can contain product and review records. Purpose-built views make exports easier:
| View/output | Purpose |
|---|---|
overview | Discovered and enriched products |
pricing | Prices, discounts, ratings, sales, and URLs |
export | Compact flat product export |
details | Full product details, seller, shipping, specifications, gallery, and description |
reviews | Buyer review records |
changes | Monitoring lifecycle and before/after state |
stores | Supplier/store products and store metadata |
variants | One row per product SKU/variant |
| Run report | HTML dashboard with counts, detail success, billing events, and diagnostics |
| Market summary | Price/sales/rating distributions, coverage, top stores/categories, and top products |
Missing upstream data remains null or absent rather than being invented. Without extra scrape requests, product runs also generate a market summary. Products with collected reviews can include derived positive/negative/media rates, top countries and variants, low-rating problem variants, and best-effort complaint themes.
Resume and incremental collection
- Select
resumeDatasetto continue product collection without re-emitting products already completed there. - Use
onlyNewReviews: trueto emit and bill only unseen accepted review identities in the fetched review window. - Product monitoring persists compact snapshots and normally suppresses unchanged products.
- Monitoring and incremental state are stored in named key-value stores in the customer's Apify account.
Pricing
This Actor uses pay per event. Always check the live Store pricing panel before a run because Store prices can change.
| Event | Current listed price |
|---|---|
| Actor start | $0.005 per start event (memory-adjusted by Apify) |
| Search/store product | $0.00199 per successful product |
| Full product detail | $0.008 per successful rich detail |
| Buyer review | $0.001 per emitted review |
| Product change | $0.005 per first-seen or changed monitoring result |
Product result events are mutually exclusive: an ordinary search/store row uses product, a successful rich detail uses product-detail, and a first-seen or changed monitor row uses product-change. Reviews are billed independently. Filtered rows, duplicates, failed requests, failed direct details, suppressed unchanged rows, and rows beyond a charge limit are not successful custom result events.
Use maxResults, maxReviewsPerProduct, maxTotalReviews, and Apify's run charge limit to control spend.
Reliability and limitations
- Search uses lightweight HTTP; detail and store workflows use Chromium only when required.
- Product details use a managed browser engine that recovers automatically when AliExpress challenges a request.
- Detail success depends on AliExpress's anti-bot state at run time. In our tests the same product set ranged from 0% to over 85% captured between runs minutes apart, and European markets were consistently easier than US.
- Rows never come back empty: failed details still carry title, image and, where available, rating and review count, and are not billed as full details.
- After repeated blocks the run stops attempting full details and returns basic rows for the remaining products instead of failing.
- The run tracks its own time budget and stops before the timeout so every collected result is saved.
- On Apify cloud, proxy routing is managed automatically through a residential IP in
targetCountry; customers do not provide proxy credentials. - Blocks are reported as blocks, not disguised as zero-result success.
- The Actor does not solve CAPTCHAs.
- Rich detail is product and route dependent; it is not guaranteed for every product.
- Store catalogs are dynamic and bounded, so captured results may not represent every store item.
- AliExpress can override requested localization. Trust each row's returned currency and market fields. When
targetCountryis empty, the market is inferred from regional product/store links (de.,fr.,es.,it.,nl.,pl.,ja.,ko.,tr.,he.,th.,vi.subdomains and ship-to parameters). UKis accepted asGB.RUis unsupported — aliexpress.ru is a separate storefront.- Review depth depends on what AliExpress exposes in the fetched window.
- Retries, pages, request counts, and browser operations are bounded.
In private/cloud acceptance tests, 1K, 5K, and 10K unique-product US search runs completed with zero retries, blocks, or errors for the measured input shape. The measured 10K run completed in about nine minutes. These are test results, not a promise that every 10K run will have the same speed or outcome.
FAQ
Is this an AliExpress API alternative?
Yes for data-collection workflows: it provides structured product search, details, variants, reviews, seller/store data, and monitoring through Apify clients and REST APIs. It is an independent scraper, not an official AliExpress API and not affiliated with or endorsed by AliExpress.
Do I need my own proxy?
No. Proxy routing is managed on Apify cloud. Do not put proxy URLs or credentials in ordinary Actor input.
Can it scrape AliExpress variants and SKU inventory?
Yes, when full detail succeeds and AliExpress exposes the fields. The variants dataset view produces one row per SKU with price and available inventory where available.
Can it scrape AliExpress buyer photos and low-star reviews?
Yes. Use reviewsWithMediaOnly: true, set maxReviewRating, and bound maxReviewsPerProduct and maxTotalReviews.
Can it scrape every product from an AliExpress supplier store?
It collects accessible products with bounded paging. AliExpress stores are dynamic and may not expose a complete catalog, so completeness is not guaranteed.
Can I use it as an AliExpress price tracker?
Yes. Save monitor input as an Apify Task, schedule repeated runs, and consume NEW/UPDATED records from the changes view. Set emitUnchanged: true only if stable rows are also needed.
Can I use this AliExpress scraper from Python or JavaScript?
Yes. Use the official apify-client package for Python or JavaScript, or call the REST API from any language. Copyable examples are linked above.
Does it work with AI agents and MCP?
Yes. Apify's hosted MCP server can discover, inspect, run, and retrieve results from the Actor after authorization. The Actor's schemas provide structured input and output guidance for agents.
Where is data stored?
Results and state are written to storage in the running customer's Apify account. Dataset and key-value retention follow that customer's Apify plan and storage settings. No output is copied to an external service by this Actor.
Data handling
The Actor processes public AliExpress marketplace pages. Buyer display names can be omitted with hideReviewerName. Use collected data in accordance with applicable law, AliExpress terms, and your own privacy obligations.
This independent community Actor is maintained by Studio Sussex and is not affiliated with or endorsed by AliExpress.
Support
For reproducible issues, open the Actor's Issues tab with the run ID, workflow, sanitized input, and first relevant error message. Even better: enable Share runs with developer for the Actor in Console so the failing run can be inspected directly. Never include API tokens, proxy credentials, cookies, or private customer data.