AliExpress Product Scraper avatar

AliExpress Product Scraper

Pricing

from $6.80 / 1,000 products

Go to Apify Store
AliExpress Product Scraper

AliExpress Product Scraper

Scrape AliExpress products by keyword or URL: title, price, original price, discount, currency, rating, orders sold, store name and rating, shipping and choice badges, plus (with details) variants, per-SKU prices, specs and store info. For e-commerce price monitoring and product research.

Pricing

from $6.80 / 1,000 products

Rating

4.0

(1)

Developer

Scrapers Lat

Scrapers Lat

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

10 days ago

Last modified

Categories

Share

AliExpress Product Scraper

AliExpress Product Scraper

Here is one real result, with every field the actor returns:

{
"imageUrl": "https://ae-pic-a1.aliexpress-media.com/kf/S7636b8779b554f9ba0c59a63fe765af64.jpg",
"title": "F9 5C Wireless Bluetooth Headphones Tws Waterproof Earbuds Earphones Digital Display Heaset Large Capacity Charging Case",
"url": "https://www.aliexpress.com/item/3256811827490161.html",
"productId": "3256811827490161",
"price": 1.33,
"priceFormatted": "US $1.33",
"originalPrice": 7.07,
"originalPriceFormatted": "US $7.07",
"discountPercent": 81,
"currency": "USD",
"rating": 4.9,
"ordersText": "5,000+ sold",
"orderCount": 8025,
"isChoice": true,
"isAd": false,
"shipFromCountry": "CN",
"skuId": "12000057287338058",
"tags": ["Delivery: Aug 16 - 21"],
"images": [
"https://ae-pic-a1.aliexpress-media.com/kf/S7636b8779b554f9ba0c59a63fe765af64.jpg",
"https://ae-pic-a1.aliexpress-media.com/kf/S88303a7f1a904b84bd5f618aee029b6c8.jpg"
],
"storeName": "Stone's Store",
"storeId": "1103576287",
"storeUrl": "https://www.aliexpress.com/store/1103576287",
"storePositiveRate": "100.0",
"storeCountry": "China",
"storeOpenSince": "Mar 1, 2024",
"storeYears": 2,
"productRating": 4.9,
"reviewCount": 1011,
"salesText": "This seller: 5,000+ sales | Total sales: 5,000+",
"specifications": [
{ "name": "Material", "value": "Plastic" },
{ "name": "Wireless Type", "value": "Bluetooth" },
{ "name": "Brand Name", "value": "DAMORE" }
],
"variants": [{ "name": "Color", "options": ["black"] }],
"variantPrices": [
{ "skuId": "12000057287338058", "attributes": "14:193", "price": "$3.44", "available": true, "stock": 1207 }
],
"imageGallery": [
"https://ae-pic-a1.aliexpress-media.com/kf/S7636b8779b554f9ba0c59a63fe765af64.jpg",
"https://ae-pic-a1.aliexpress-media.com/kf/S88303a7f1a904b84bd5f618aee029b6c8.jpg"
],
"detailTitle": "F9 5C Wireless Bluetooth Headphones Tws Waterproof Earbuds Earphones Digital Display Heaset Large Capacity Charging Case",
"categoryId": "63705",
"aiCleanName": null,
"aiTitleEn": null,
"aiAttributes": null,
"aiCategory": null,
"observedAt": "2026-08-10T14:17:09.097Z",
"error": null
}

The most complete AliExpress product scraper available. It returns every field the AliExpress listing and product pages expose (price, discount, orders, ratings, store details, per-SKU variant prices, specifications, and the full image gallery), plus optional AI add-ons for a clean and translated product name and structured attributes, and gives you seven filters to target exactly the products you need.

📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples

Apify Coverage Output Billing

Table of contents

What it does

The actor searches AliExpress by keyword, search-result URL, or direct product URL, applies the filters you pass, paginates through the matching listings, and writes one normalized record per product to the run's dataset. With withDetails on (the default), each product is enriched from its product page with store name and rating, full specifications, variant options with per-SKU prices, and the complete image gallery. Prices are returned both as numbers and as formatted strings, missing source values are returned as null, and two optional AI add-ons (paid plans only) can add a clean and English-translated product name and structured attributes on top of the raw fields.

Quickstart

Open the actor, paste this into the input, and press Run. It returns the 10 most relevant wireless earbuds with full product details.

{
"maxProducts": 10,
"withDetails": true,
"searchTerms": ["wireless earbuds"],
"sortBy": "default",
"shipFromCountry": ""
}

Provide searchTerms, startUrls, or both. Direct product URLs (/item/{id}.html) are fetched individually; search-result URLs and keywords are paginated.

Input reference

FieldTypeRequiredDefaultDescription
searchTermsstring[]no["wireless earbuds"]Keywords to search on AliExpress, for example wireless earbuds. One search runs per keyword.
startUrlsstring[]no(empty)AliExpress search-result URLs or direct product URLs (/item/{id}.html). Product URLs are fetched individually.
maxProductsintegerno10Maximum products to collect across all search terms and URLs. Free Apify plans are capped at 10 per run.
withDetailsbooleannotrueEnrich each product with product-page fields: store name and rating, full specifications, variant options with per-variant prices, and the complete image gallery. Slower but richer.
sortByenumnodefaultResult order for keyword and search-URL runs. One of default (best match), orders, newest, priceAsc, priceDesc.
minPriceintegerno(none)Only include products at or above this price (USD).
maxPriceintegerno(none)Only include products at or below this price (USD).
shipFromCountryenumno(any)Restrict to products shipping from one country. One of CN, US, ES, RU, FR, PL, IT, DE, TR, KR, BR, CZ, BE.
withDescriptionbooleannofalseAI add-on (paid plans only). Turn the noisy keyword-stuffed title into a concise clean product name and an English name. Charged only when the model returns usable output.
withAttributesbooleannofalseAI add-on (paid plans only). Extract structured product attributes and a broad category from the title and specifications. Charged only when the model returns usable output.

Output reference

One dataset item per product. Types: string, number, integer, boolean, string[], object[], object, or null when the source value is absent.

FieldTypeDescription
imageUrlstringPrimary product thumbnail URL.
titlestringListing title as shown in search results.
urlstringCanonical product page URL.
productIdstringAliExpress product ID.
pricenumberCurrent sale price as a number, or null.
priceFormattedstringCurrent price with currency symbol, for example US $1.33.
originalPricenumberPre-discount price as a number, or null.
originalPriceFormattedstringPre-discount price with currency symbol.
discountPercentintegerDiscount percentage off the original price.
currencystringISO currency code, for example USD.
ratingnumberListing star rating (0 to 5).
ordersTextstringOrders-sold label as shown, for example 5,000+ sold.
orderCountintegerParsed numeric order count.
isChoicebooleantrue when the product carries the AliExpress Choice badge.
isAdbooleantrue when the placement is a paid ad.
shipFromCountrystringTwo-letter ship-from country code.
skuIdstringDefault SKU ID for the listing.
tagsstring[]Badge and delivery tags shown on the card, or null.
imagesstring[]Card image URLs.
storeNamestringStore name (details only).
storeIdstringStore ID (details only).
storeUrlstringStore page URL (details only).
storePositiveRatestringStore positive-feedback percentage (details only).
storeCountrystringStore country (details only).
storeOpenSincestringStore open date (details only).
storeYearsintegerYears the store has been open (details only).
productRatingnumberProduct-page rating (details only).
reviewCountintegerNumber of valid reviews (details only).
salesTextstringSeller and total sales summary (details only).
specificationsobject[]Product specifications as {name, value} pairs (details only).
variantsobject[]Variant dimensions as {name, options[]} (details only).
variantPricesobject[]Per-SKU {skuId, attributes, price, available, stock} (details only).
imageGallerystring[]Full product image gallery (details only).
detailTitlestringFull title from the product page (details only).
categoryIdstringAliExpress category ID (details only).
aiCleanNamestringClean product name from the AI add-on, or null.
aiTitleEnstringEnglish product name from the AI add-on, or null.
aiAttributesobjectStructured attributes from the AI add-on, or null.
aiCategorystringBroad category from the AI add-on, or null.
observedAtstringISO 8601 timestamp of when the record was collected.
errorstringnull on success. On a failed run, a single item with a populated error field is written instead.

Example output record

Real record from a live run (input {"searchTerms": ["wireless earbuds"], "maxProducts": 10, "withDetails": true}):

{
"imageUrl": "https://ae-pic-a1.aliexpress-media.com/kf/S7636b8779b554f9ba0c59a63fe765af64.jpg",
"title": "F9 5C Wireless Bluetooth Headphones Tws Waterproof Earbuds Earphones Digital Display Heaset Large Capacity Charging Case",
"url": "https://www.aliexpress.com/item/3256811827490161.html",
"productId": "3256811827490161",
"price": 1.33,
"priceFormatted": "US $1.33",
"originalPrice": 7.07,
"originalPriceFormatted": "US $7.07",
"discountPercent": 81,
"currency": "USD",
"rating": 4.9,
"ordersText": "5,000+ sold",
"orderCount": 8025,
"isChoice": true,
"isAd": false,
"shipFromCountry": "CN",
"skuId": "12000057287338058",
"tags": ["Delivery: Aug 16 - 21"],
"storeName": "Stone's Store",
"storeId": "1103576287",
"storeUrl": "https://www.aliexpress.com/store/1103576287",
"storePositiveRate": "100.0",
"storeCountry": "China",
"storeOpenSince": "Mar 1, 2024",
"storeYears": 2,
"productRating": 4.9,
"reviewCount": 1011,
"salesText": "This seller: 5,000+ sales | Total sales: 5,000+",
"variants": [{ "name": "Color", "options": ["black"] }],
"variantPrices": [
{ "skuId": "12000057287338058", "attributes": "14:193", "price": "$3.44", "available": true, "stock": 1207 }
],
"detailTitle": "F9 5C Wireless Bluetooth Headphones Tws Waterproof Earbuds Earphones Digital Display Heaset Large Capacity Charging Case",
"categoryId": "63705",
"observedAt": "2026-08-10T14:17:09.097Z",
"error": null
}

Run via API and CLI

Start a run and wait for it to finish, then read the dataset. Replace <TOKEN> with your Apify API token.

Run synchronously and get dataset items in one call:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~aliexpress-scraper/run-sync-get-dataset-items?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"searchTerms":["wireless earbuds"],"maxProducts":25,"withDetails":true,"sortBy":"orders"}'

Start a run asynchronously:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~aliexpress-scraper/runs?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"startUrls":["https://www.aliexpress.com/item/3256811827490161.html"],"withDetails":true}'

Apify CLI:

apify call scrapers_lat/aliexpress-scraper \
--input '{"searchTerms":["mechanical keyboard"],"maxProducts":50,"minPrice":10,"maxPrice":50}'

Fetch results

Every run writes to a dataset. Fetch items as JSON, CSV, or Excel by changing format:

# JSON
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=json"
# CSV
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"
# Paginate large datasets
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&offset=1000&limit=1000"

<DATASET_ID> is returned as defaultDatasetId in the run object. Use offset and limit to page through large result sets. clean=true drops empty and internal fields.

Billing and limits

  • Pay per result. You are charged per product returned (result event). The details add-on charges only when product-page data was actually obtained. See the pricing tab for current prices.
  • No charge on failure. If a run errors or matches nothing, the actor writes a single item with a populated error field and does not charge for it.
  • Spend cap respected. Set maxTotalChargeUsd on the run; once reached, the actor stops emitting and charging further billable results.
  • Free Apify plans are capped at 10 products per run. AI add-ons (withDescription, withAttributes) require a paid plan and are charged only when the model returns usable output.
  • Anti-bot. The actor rotates AliExpress-matched residential sessions to fetch listing and product data. Transient blocks are retried; a fully blocked source is reported as an error and not charged.

FAQ and troubleshooting

A run returned 0 products. Why? Either the search matched nothing or the source was temporarily unavailable. The actor writes a single error item explaining which; zero-result runs are not charged. Retry, loosen filters, or widen the price range.

How do I get the best-selling products? Set sortBy to orders. Combine with a keyword and optionally a shipFromCountry.

What is the difference between listing fields and detail fields? Listing fields (price, orders, rating, badges) always come back. Store details, specifications, variant prices, and the image gallery are added only when withDetails is on.

Why are the AI fields null? The AI add-ons are off by default and require a paid Apify plan. Enable withDescription or withAttributes on a paid plan to populate aiCleanName, aiTitleEn, aiAttributes, and aiCategory.

Can I scrape a single product page? Yes. Put its /item/{id}.html URL in startUrls. It is fetched directly with full detail fields.

Is this an official AliExpress tool? No. This actor is independent and has no affiliation with AliExpress or Alibaba. It reads only data that is publicly visible on AliExpress.

More scrapers at scrapers.lat

Built and maintained by scrapers.lat, where we publish scrapers for US and Latin American public platforms: company registries, government data, finance, e-commerce and more. Browse the catalog or request a custom scraper at scrapers.lat.


Independent tool, not affiliated with AliExpress or Alibaba. Accesses only publicly available data.