AliExpress Products & Seller Catalog Scraper avatar

AliExpress Products & Seller Catalog Scraper

Pricing

Pay per event

Go to Apify Store
AliExpress Products & Seller Catalog Scraper

AliExpress Products & Seller Catalog Scraper

Extract AliExpress product searches, full item details, prices, variants, seller data, and public store catalogs for supplier sourcing and monitoring.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

2 days ago

Last modified

Categories

Share

Extract AliExpress product search details and seller catalogs for supplier sourcing, assortment research, and recurring price monitoring.

This Actor turns public AliExpress searches, item URLs, and store URLs into typed product records. It captures prices, discounts, ratings, sales counts, images, stock, variants, specifications, and public seller context where the selected route provides them.

What can this AliExpress scraper do?

  • Search AliExpress by one or more buyer keywords.
  • Extract canonical product IDs, titles, URLs, images, and displayed prices.
  • Capture ratings, sold counts, discounts, and currency when shown.
  • Resolve explicit item URLs to core product snapshots and retain structured product-detail data when AliExpress exposes it.
  • Extract stock, specifications, variants, category, and seller identity when present in the structured response.
  • Snapshot products displayed in a public seller catalog.
  • Add store name, store ID, followers, and positive-feedback rate where available.
  • Deduplicate products across all inputs in one run.
  • Stop at a user-controlled global product limit.
  • Rotate challenged sticky datacenter sessions up to twice, then fail loudly rather than spend on an ineffective route.

The Actor does not require an AliExpress account, cookies, or an external API key.

Who is it for?

Supplier sourcing teams

Compare products from keyword searches and inspect the public store behind a promising item.

Marketplace analysts

Collect consistent product rows for price, discount, rating, and assortment comparisons.

Dropshipping operators

Resolve item URLs to stable product identity and inspect any variants, stock, specifications, and public seller signals AliExpress exposes before shortlisting products.

Data and automation teams

Schedule the same search or seller input and compare dataset snapshots in a warehouse, spreadsheet, or monitoring workflow.

Developers

Call the Actor through the Apify API, JavaScript client, Python client, or MCP.

Why use this Actor?

AliExpress serves different parts of the product journey through different browser and structured-data surfaces. A simple HTML request can return a CAPTCHA, an empty client-rendered shell, or incomplete product cards.

This Actor combines:

  1. rendered product search pages;
  2. AliExpress's signed in-browser product-detail response;
  3. the mobile public store surface for seller product discovery;
  4. sticky browser, cookie, locale, and proxy sessions;
  5. up to two bounded datacenter session rotations after verified blocking.

Challenge pages are treated as errors, not as valid empty results.

What data does it extract?

FieldMeaning
sourceTypesearch, product_detail, or seller_catalog
productIdAliExpress product identifier
titleProduct title
urlCanonical AliExpress product URL
imageUrlPrimary image URL when available
currentPriceCurrent displayed or selected price
originalPricePre-discount price when available
currencyLocalized currency code
discountPercentageDisplayed or calculated discount
ratingProduct rating
ordersDisplayed sold/order count
availabilityNormalized detail availability
stockAvailable inventory from product detail
categoryIdAliExpress category ID
sellerIdPublic seller ID
storeIdPublic store ID
storeNameStore display name
storeUrlPublic store URL
sellerPositiveRatePositive-feedback percentage
sellerFollowersDisplayed follower count
propertiesProduct specification name/value pairs
variantsStructured SKU price/stock entries
searchQueryQuery that found a search record
sellerCatalogUrlStore input that found a catalog record
scrapedAtExtraction time in ISO 8601 format

Fields can be null when AliExpress does not expose them on that route or for that product.

Getting started

  1. Open the Actor input page.
  2. Add at least one search query, product URL, or seller URL.
  3. Set maxItems to the number of unique product rows you need.
  4. Keep maxPagesPerQuery small for a test run.
  5. Start the run.
  6. Open the Products dataset view.
  7. Export the data as JSON, CSV, Excel, or another Apify-supported format.

A useful first input is:

{
"searchQueries": ["wireless earbuds"],
"maxItems": 5,
"maxPagesPerQuery": 1
}

Input parameters

searchQueries

An array of product keywords, for example wireless earbuds or camping cookware.

productUrls

AliExpress URLs containing /item/<id>.html. These produce detailed records with specifications, stock, variants, and seller data when available.

sellerUrls

Public AliExpress URLs containing /store/<id>. These produce product rows from the store's public catalog surface.

maxItems

Global number of unique products saved across all inputs. Range: 1–1,000. Default: 50.

maxPagesPerQuery

Maximum discovery depth for each search or seller input. Range: 1–20. Default: 3.

Search workflow example

Find five wireless earbud listings:

{
"searchQueries": ["wireless earbuds"],
"maxItems": 5,
"maxPagesPerQuery": 1
}

Search rows prioritize comparable listing fields such as title, current price, image, discount, rating, and sold count.

Product-detail workflow example

Inspect one current item:

{
"productUrls": [
{ "url": "https://www.aliexpress.com/item/3256812072210872.html" }
],
"maxItems": 1
}

The Actor keeps the same browser session while AliExpress bootstraps its anonymous token and returns structured detail data.

Seller-catalog workflow example

Capture a supplier assortment snapshot:

{
"sellerUrls": [
{ "url": "https://www.aliexpress.com/store/1103576287" }
],
"maxItems": 10,
"maxPagesPerQuery": 1
}

Schedule this input and compare product IDs, titles, and prices between runs in your own downstream system.

The Actor emits the current snapshot; it does not itself store history or send alerts.

Output example

A current detailed record has this shape:

{
"entityType": "product",
"sourceType": "product_detail",
"productId": "3256812072210872",
"title": "Xiaomi Airdots 2 Wireless Earphones Bluetooth Headset",
"url": "https://www.aliexpress.com/item/3256812072210872.html",
"imageUrl": "https://ae-pic-a1.aliexpress-media.com/kf/sample.jpg",
"currentPrice": 7.2,
"originalPrice": 14.41,
"currency": "USD",
"discountPercentage": 50,
"rating": 4.9,
"availability": "in_stock",
"stock": 64,
"categoryId": "63705",
"sellerId": "2678280160",
"storeId": "1103576287",
"storeName": "Stone's Store",
"storeUrl": "https://www.aliexpress.com/store/1103576287",
"sellerPositiveRate": 100,
"properties": [
{ "name": "Bluetooth Version", "value": "5.0" }
],
"variants": [],
"searchQuery": null,
"sellerCatalogUrl": null,
"scrapedAt": "2026-07-28T18:02:26.641Z"
}

Values and availability change over time. Treat the example as a field guide, not a price guarantee.

How much does it cost to scrape AliExpress products?

The Actor uses pay per event pricing:

  • Start: $0.010 once per run.
  • Product: one item event for each unique product record saved.
  • No charge is emitted for rejected, duplicate, challenged, or failed records.

Current per-product tiers are:

Plan tierPrice per product
Free$0.020240
Bronze$0.017600
Silver$0.013728
Gold$0.010560
Platinum$0.007040
Diamond$0.004928

At Bronze pricing, excluding variable platform usage where applicable:

  • 5 products: $0.010 + (5 × $0.017600).
  • 25 products: $0.010 + (25 × $0.017600).
  • 100 products: $0.010 + (100 × $0.017600).

AliExpress protection can affect runtime and proxy transfer, but it does not create extra Actor event types.

Recurring price and catalog monitoring

A repeatable monitoring workflow is:

  1. Save a Task with stable queries, item URLs, or seller URLs.
  2. Schedule it daily or weekly.
  3. Export each default dataset to your storage system.
  4. Join rows by productId.
  5. Compare non-null currentPrice, originalPrice, stock, and store fields.
  6. Trigger your own notifications for meaningful changes.

Use explicit product URLs to request deeper stock and specification fields, while treating those fields as optional because AliExpress can withhold its structured response. Use searches or seller catalogs for wider assortment discovery.

Export and integrations

The default dataset works with:

  • JSON and JSONL exports;
  • CSV and Excel exports;
  • Google Sheets integrations;
  • webhooks and automation platforms;
  • Apify dataset API clients;
  • data warehouses and BI pipelines.

Every run uses its own default dataset, so results do not leak from previous runs.

API usage with cURL

curl -X POST \
"https://api.apify.com/v2/acts/automation-lab~aliexpress-products-scraper/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"searchQueries": ["wireless earbuds"],
"maxItems": 5,
"maxPagesPerQuery": 1
}'

Keep your token in an environment variable or secret manager.

API usage with JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/aliexpress-products-scraper').call({
sellerUrls: [{ url: 'https://www.aliexpress.com/store/1103576287' }],
maxItems: 10,
maxPagesPerQuery: 1,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

API usage with Python

import os
from apify_client import ApifyClient
client = ApifyClient(os.environ["APIFY_TOKEN"])
run = client.actor("automation-lab/aliexpress-products-scraper").call(
run_input={
"productUrls": [
{"url": "https://www.aliexpress.com/item/3256812072210872.html"}
],
"maxItems": 1,
}
)
items = client.dataset(run["defaultDatasetId"]).list_items().items
print(items)

Use with Apify MCP

Add this Actor to Claude Code:

claude mcp add --transport http apify \
"https://mcp.apify.com?tools=automation-lab/aliexpress-products-scraper"

Claude Desktop

Add the following remote MCP server in Claude Desktop:

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=automation-lab/aliexpress-products-scraper"
}
}
}

Cursor

Use the same JSON in Cursor's MCP settings and enable the apify server.

VS Code

Add the same HTTP MCP server URL to your VS Code MCP configuration.

Example prompts:

  • “Find five AliExpress wireless earbud products and compare prices.”
  • “Extract the current detail record for this AliExpress item URL.”
  • “Capture ten products from this public AliExpress seller store.”

Reliability and anti-bot behavior

AliExpress can vary responses by session, country, source route, and request history.

The Actor:

  • keeps proxy identity and cookies together;
  • reuses healthy sessions;
  • detects CAPTCHA and punish pages;
  • rotates challenged datacenter sessions up to twice;
  • avoids automatic residential fallback after measured validation showed it added cost without useful output;
  • retries transient browser navigation changes;
  • fails loudly after bounded escalation.

A failed source is not converted into a successful run with zero expected rows.

Limits and responsible scaling

  • Keep initial runs small.
  • Increase maxItems and page depth gradually.
  • Search and seller pages can reorder products between runs.
  • Localized prices can differ by destination, session, promotion, and currency.
  • Some product IDs redirect between AliExpress country domains.
  • Seller catalog rows contain the fields visible on the store surface; use explicit product URLs for deeper enrichment.
  • Products can disappear or become unavailable by region.
  • AliExpress sometimes withholds its structured detail response while still rendering a useful public product page. In that case, the Actor saves core item fields and leaves unavailable stock, specification, and variant fields null or empty.
  • The Actor does not bypass login-only or private information.

Troubleshooting

“Provide at least one search query, product URL, or seller URL”

Add a supported value to searchQueries, productUrls, or sellerUrls.

“Product URL does not contain /item/

Use a normal public AliExpress item URL rather than a shortened or unrelated URL.

“Seller URL does not contain /store/

Open the seller's public store and copy its numeric /store/ URL.

“AliExpress listing failed after bounded proxy/session escalation”

The source returned challenges or empty shells across all three bounded datacenter sessions. Retry later or reduce parallel scheduled activity.

Why are some fields null?

Search cards, item details, and seller catalogs expose different fields. Null means the source did not provide that value on the selected route.

This Actor extracts publicly accessible marketplace information.

You are responsible for:

  • complying with AliExpress terms and applicable law;
  • using data for a lawful purpose;
  • respecting intellectual property and database rights;
  • avoiding personal-data profiling or harmful surveillance;
  • choosing a reasonable schedule and volume;
  • securing exported datasets and API tokens.

Do not use the Actor to access private accounts, evade access controls, or collect information you are not authorized to process.

FAQ

Does it require an AliExpress login?

No. The implemented workflows use anonymous public surfaces.

Can it scrape both .com and .us item URLs?

Yes. Supported product URLs use aliexpress.com or aliexpress.us and contain a numeric item path.

Does it enrich every search and catalog row automatically?

No. Search and catalog modes preserve efficient listing-level records. Item URLs request deeper specifications, stock, variants, and seller detail, but those optional fields remain null or empty when AliExpress withholds its structured response.

Does it store historical prices?

No. Each run returns a current snapshot. Store and compare snapshots in your own system.

Why did a product redirect to another AliExpress domain?

AliExpress localizes pages by session and country. The Actor captures the structured product response and emits a stable canonical .com product URL.

Choose this Actor when your source of record is public AliExpress product or seller-store data.

Support

If a previously working input fails consistently, include:

  • the input mode;
  • a redacted example URL or query;
  • the run ID;
  • the error message.

Do not include Apify tokens, private cookies, or account credentials.