# Taobao Scraper: Taobao Products and Tmall Best Sellers, Prices (`themineworks/taobao-products-scraper`) Actor

Taobao scraper for 淘宝 and Tmall 天猫 best sellers by keyword, category or item id: title, price in CNY, promo price, shop, category, images and selling points. English keywords are translated for you and prices can be converted to 25 currencies. Item details on request. No login.

- **URL**: https://apify.com/themineworks/taobao-products-scraper.md
- **Developed by:** [The Mine Works](https://apify.com/themineworks) (community)
- **Categories:** E-commerce, Business, MCP servers
- **Features:** Limited permissions
- **Stats:** 49 total users, 21 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.99 / 1,000 products

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Taobao Scraper 淘宝 天猫: Keyword Search, Shops, Prices, Seller Scores

[![182 Taobao products in 16 seconds](https://api.apify.com/v2/key-value-stores/cUXz95yxflDho41nn/records/taobao-products-scraper-hero-fix0930.png)](https://console.apify.com/actors/tl3xHG9gCeJf1Z5w4/input?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

From **The Mine Works**, makers of [Threads Scraper](https://apify.com/themineworks/threads-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral) and [B2B Leads Finder](https://apify.com/themineworks/b2b-leads-finder?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral), with over 290,000 runs across 310+ public actors.

Updated 31 Oct 2026: up to 1,000 products per keyword with deep search (was 60), shop catalogues by shop id or shop link (up to 60 products per shop with the shop's scores and size), the rating split (positive, neutral, negative) and Taobao's own generated summary on item details, review photos and follow up reviews, and the start fee is now charged with the first product, so a run that finds nothing costs nothing.

Updated 23 Oct 2026: search in English (`wireless earbuds`, `lipstick`) as well as Chinese, paste any mix of Taobao and Tmall links and item ids in one box, see prices in USD or 24 other currencies next to the yuan price, and get how many buyers reviewed an item and what they mention most as proper fields.

Give it Chinese or English product words such as 手机壳 or `phone case` and it returns the products Taobao ranks as best sellers and top rated for each word: the full title, the price in yuan, the promotion price, the shop, the category path, the main image and the seller's selling points. Ask for more than 60 per keyword and it keeps going, reading the keyword again in price bands, sort orders and brands until it has the number you asked for. Give it shop ids or shop links and it returns each shop's products with the shop's scores and catalogue size. Turn on item details and each product also gets where it ships from, whether it is a Tmall store, the seller's three service scores, the rating split, the shop's open date and size, and a recent review with its photos. You can also look up products by item id or by any Taobao or Tmall link. Everything is read from pages Taobao publishes for every visitor, logged out, so there is no login, no cookie and no browser.

### Why choose this actor?

- **Up to 1,000 products per keyword.** Taobao's own keyword pages stop at 60. Set `maxProductsPerKeyword` higher and the actor reads the keyword again in slices (price bands around the keyword's typical price, two sort orders, the top brands), each slice a different 20 products, and keeps only new ones. 蓝牙耳机 gave 300 different products in 22 seconds in a local test on 31 Oct 2026.
- **Shop catalogues.** Paste shop ids or shop links (`shop67095450.taobao.com`) and get up to 60 of each shop's products, plus the shop's name, seller id, logo, its three scores and how many products the whole shop has, in `shop_profile`.
- **Search in English.** `wireless earbuds` becomes 蓝牙耳机 and `lipstick` becomes 口红 before Taobao is asked, using a list of product words checked against Taobao's own pages, then Taobao's own English page for the word, then a free translation service. The row keeps your word in `keyword_original`.
- **Prices in your money, review signal in columns.** `price_converted` in USD (or EUR, GBP, INR, JPY and 20 more) with the rate and its date, and, with item details, `review_count_min` plus `review_highlights` such as 没有异味 with how many buyers said it.
- **182 products from 6 keywords in 16 seconds.** A local test run on 1 October 2026 read 5 keywords plus one Taobao has no page for, made 13 page requests and returned 182 different products with prices, shops and categories. No Taobao account, no cookies, no app.
- **The products Taobao itself ranks.** Each keyword gives Taobao's 20 best sellers and up to 40 top rated products, about half of them new, with their rank and the total Taobao counts for the word. You see what sells, not a random page of listings.
- **You pay only for new products.** A product found again under a second keyword, a product outside your price range, a product seen in an earlier run with monitor mode on, and a word Taobao has no page for are never charged.

[![Run it on Apify](https://api.apify.com/v2/key-value-stores/cUXz95yxflDho41nn/records/button-run.png)](https://console.apify.com/actors/tl3xHG9gCeJf1Z5w4/input?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Part of The Mine Works More tools family:** [G2 Reviews Scraper](https://apify.com/themineworks/g2-reviews-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral), [Tennis Match & Player Data Scraper](https://apify.com/themineworks/tennis-match-data?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral), [Flashscore Tennis Scraper](https://apify.com/themineworks/flashscore-tennis-results-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral), [LandWatch Scraper](https://apify.com/themineworks/landwatch-land-for-sale-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral), [Capterra Reviews Scraper](https://apify.com/themineworks/capterra-software-reviews-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral), [Google Hotels Prices Scraper](https://apify.com/themineworks/google-hotels-prices-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral).

Guide and FAQs: [Taobao Products Scraper on themineworks.com](https://themineworks.com/actors/taobao-products-scraper/).

### Try it in one minute

Paste this into the JSON tab of the input form and press Start. It returns about 40 products in under 15 seconds.

```json
{
  "keywords": ["手机壳", "wireless earbuds"],
  "maxProductsPerKeyword": 40
}
```

You can give the actor three kinds of input, in any mix, or paste everything into `startUrls` and let it sort the lines for you: **keywords** (a Chinese or English product word such as 连衣裙 or `dress`, or a `www.taobao.com/list/product/` link), **categories** (a Taobao category id such as `150704`, or a `www.taobao.com/list/category/` link) and **items** (an item id such as `971278517006`, or any Taobao or Tmall item link that carries the id, such as `https://item.taobao.com/item.htm?id=971278517006` or `https://detail.tmall.com/item.htm?id=1078907312106`).

Apify's free plan includes $5 of credit every month, which covers about 1,600 products at this actor's Free plan price of $2.99 per 1,000 products, plus a flat $0.005 per run whatever memory you choose, charged with the first product (a run that delivers nothing is not charged).

#### Copy to your AI assistant

Paste this block into ChatGPT, Claude, Cursor or any assistant that can write code, and it can run the actor for you.

```
themineworks/taobao-products-scraper on Apify. Returns Taobao and Tmall best sellers and top rated products for Chinese or English product keywords or category ids (title, price_cny, price_converted, promo_price_cny, shop_name, category_path, image_url, rank, keyword_original), and item details by item id or Taobao/Tmall link (ships_from, platform, review_count_min, review_highlights, rating_good_percent, rating_bad_percent, seller scores dsr_description/dsr_service/dsr_logistics, shop_opened_at, shop_item_count, latest_review), and shop products by shop id or shop link (shop_profile with the shop's scores and catalog_count). Above 60 per keyword, deep search rows carry source_list "deep-search" and search_filter. Call ApifyClient("TOKEN").actor("themineworks/taobao-products-scraper").call(run_input={...}), then client.dataset(run["defaultDatasetId"]).list_items().items. Required: at least one of keywords (array of Chinese or English product words or www.taobao.com/list/product/ links), categories (array of category ids), shops (array of shop ids or shop links), items (array of item ids or item links), startUrls (array of any mix of those). Optional: translateKeywords (boolean, default true), currency (USD default, or EUR, GBP, INR, JPY and others, CNY for none), sortBy (sales default, price_low, price_high, rating), freeShippingOnly (boolean), includeTopRated (boolean, default true), addItemDetails (boolean, default false), maxProductsPerKeyword (integer 1 to 1000, default 60; above 60 uses deep search), maxProductsPerShop (integer 1 to 60, default 60), useResidentialProxy (boolean, default true), maxProducts (integer, default 1000), minPrice and maxPrice (yuan), onlyNewProducts (boolean, default false). Rows with _type "info" explain a run that delivered nothing. Full spec: GET https://api.apify.com/v2/acts/themineworks~taobao-products-scraper/builds/default (Bearer TOKEN), which returns inputSchema and readme. Token: https://console.apify.com/account/integrations?fpr=ymnoit&utm_source=apify-readme&utm_medium=referral
```

### Key features

- **English keywords.** Set `translateKeywords` (on by default) and give `phone case`, `yoga mat` or `wireless earbuds`. 123 common product words are in a built-in list whose Chinese words were each opened on Taobao to confirm a page exists; Taobao itself understands many English words (91 of 124 tried); anything else goes to a free translation service, and each guess is opened on Taobao and kept only if Taobao has a page for it. A guess without a page costs nothing.
- **One box for links and ids.** `startUrls` takes product links from item.taobao.com, detail.tmall.com, world.taobao.com or www.taobao.com/list/item, bare item ids, keyword links (www.taobao.com/list/product, world.taobao.com/product, s.taobao.com/search?q=), category links and shop links, up to 1,000 lines, and sorts each into keyword, category, shop or item. Only the id or word is read from a link; the link itself is never opened.
- **Prices in 25 currencies.** `price_converted` and `promo_price_converted` hold the yuan price at the day's rate from the European Central Bank (or a second free source), with `fx_rate` and `fx_date` in every row. It is a conversion, not a price Taobao charges in that currency. Taobao's own HKD and TWD prices stay in `price_hkd` and `price_twd`.
- **Sort and filter.** `sortBy` sales is Taobao's own order (its lists are sorted by sales, best sellers first). Lowest price, highest price and best description score reorder the up to 60 products read for each keyword; with deep search, price sorts read the cheapest (or dearest) price bands first, so products arrive roughly in price order. `freeShippingOnly` keeps products Taobao marks as free shipping.
- **How big a keyword is.** The run summary lists, per keyword, how many products Taobao counts for it, its top brands with their listing counts and the filters Taobao offers (material, style, compatible brand), at no charge.
- **About 40 different products per keyword from Taobao's own lists, up to 1,000 with deep search.** Taobao's best seller page gives 20 products and its top rated page up to 40, about 40 different ones together. Deep search adds slices of 20 until the number you asked for; on 31 Oct 2026 a slice brought 12 to 16 new products on average, and it stops once 5 slices in a row bring nothing new.
- **About 30 fields per product, 50 with details.** Title, item id, price in yuan, promotion price and its name, prices Taobao converts to HKD and TWD, shop id and name, leaf and top level category ids with the full category path, image, selling points, the buyers' description score, free shipping, rank and the keyword's total on Taobao.
- **Item details on demand.** With `addItemDetails` on, the actor opens each product's item page and adds 20 fields: Tmall or Taobao, ships from, the price on the item page, the seller's description, service and logistics scores, seller type and credit level, shop open date, shop size, recent additions, payment methods, how many buyers wrote a review (`review_count_min`), what they mention most (`review_highlights`, also copied into `review_tags` when the list had none), the price range when variants differ, a recent review with the variant bought, its photos and videos and the buyer's follow up review, the share of positive, neutral and negative ratings (Taobao shops; Tmall pages do not print it), and Taobao's own generated title, description, keywords and selling points where it has them.
- **Item lookups by id or link.** Paste up to 1,000 item ids or Taobao and Tmall links. The actor reads the id from the link and reads the item from its www.taobao.com/list/item/ page.
- **Price filter and run caps.** `minPrice` and `maxPrice` in yuan, `maxProductsPerKeyword` and `maxProducts` keep a run to what you need, and anything left out is never charged.
- **Monitor mode for schedules.** With `onlyNewProducts` on, the actor remembers up to 50,000 products this input delivered and returns only new ones on later runs, so a daily schedule shows you new best sellers.

### How to use it

#### Basic: best sellers for one word

```json
{
  "keywords": ["蓝牙耳机"]
}
```

Returns up to 60 products: the 20 best sellers first (`source_list` is `best-selling`), then the top rated ones that were not already delivered (`top-rated`). Each row carries its `rank` on the Taobao list.

#### Deep search: 500 products for one word

```json
{
  "keywords": ["蓝牙耳机"],
  "maxProductsPerKeyword": 500
}
```

The first 60 come from Taobao's best seller and top rated lists, the rest from deep search slices (`source_list` is `deep-search`, and `search_filter` says which slice, such as `price 500 to 749 CNY, best sellers first`). Add `minPrice` and `maxPrice` and the slices stay inside your price band, so no page is spent on products you would filter out.

#### A shop's catalogue

```json
{
  "shops": ["67095450", "https://shop467290190.taobao.com"]
}
```

Up to 60 products per shop (`source` is `shop`), each with `shop_profile`: the shop's name, seller id, logo, description, service and logistics scores and `catalog_count`, the number of products in the whole shop. Turn on `addItemDetails` to add the item page fields to each product.

#### Several words at once, best sellers only

```json
{
  "keywords": ["连衣裙", "保温杯", "机械键盘", "蓝牙耳机"],
  "includeTopRated": false
}
```

Four words, 20 products each, in a few seconds. A product that shows up under two words is delivered once, under the first word, and charged once.

#### Market research: a category's best sellers with seller scores

```json
{
  "categories": ["150704", "50010850"],
  "addItemDetails": true
}
```

Category ids are in every row (`category_id`, `root_category_id`), so you can take them from an earlier keyword run. With `addItemDetails` on, every product also gets `ships_from`, `platform` (tmall or taobao), `dsr_description`, `dsr_service`, `dsr_logistics`, `shop_opened_at` and `shop_item_count`, which is enough to tell a twelve year old flagship store from a new reseller.

#### Sourcing: check a list of supplier links

```json
{
  "items": [
    "https://item.taobao.com/item.htm?id=971278517006",
    "https://detail.tmall.com/item.htm?id=1078907312106",
    "991372610509"
  ]
}
```

One row per item with the price on the item page, where it ships from, the shop and its scores, and a recent review with the variant the buyer chose. Taobao shortens the title on this page (`title_is_complete` is false); run the product's keyword to get the full title.

#### Daily price watch on a price band

```json
{
  "keywords": ["手机壳", "保温杯"],
  "minPrice": 20,
  "maxPrice": 80,
  "onlyNewProducts": true
}
```

Schedule it daily in Apify Console (Schedules, Add schedule). Each run delivers only products that entered the best seller or top rated lists since the last run, inside 20 to 80 yuan. Products seen before and products outside the band are never charged.

### Input parameters

| Parameter | Type | Default | What it does |
|---|---|---|---|
| `keywords` | array of strings | none | Product words in Chinese (手机壳, 连衣裙) or English (phone case, lipstick), or keyword page links. Each gives Taobao's 20 best sellers and, with `includeTopRated`, up to 40 top rated products. Up to 200 per run. |
| `categories` | array of strings | none | Taobao category ids (150704) or `www.taobao.com/list/category/` links. Each gives the category's 20 best sellers. Up to 100 per run. |
| `shops` | array of strings | none | Shop ids (67095450) or shop links (`shop67095450.taobao.com`, `www.taobao.com/list/dianpu/67095450.htm`). Each gives up to 60 of the shop's products with `shop_profile`. Up to 200 per run. |
| `items` | array of strings | none | Item ids or Taobao and Tmall item links carrying the id. One row each with item page details. Up to 1,000 per run. |
| `startUrls` | array of strings | none | Any mix of Taobao and Tmall links, item ids, keyword links, category links and shop links; each line is sorted into keywords, categories, shops and items. Up to 1,000 lines. |
| `translateKeywords` | boolean | `true` | Turn English keywords into the Chinese word Taobao has a page for. Off: keywords are used as written. |
| `currency` | string | `USD` | Currency for `price_converted`. 24 others to choose from; `CNY` leaves the converted columns empty. |
| `sortBy` | string | `sales` | `sales` (Taobao's order), `price_low`, `price_high` or `rating`. The last three reorder the up to 60 products read per keyword. |
| `freeShippingOnly` | boolean | `false` | Keep only products marked as free shipping. Never charged for the rest. |
| `includeTopRated` | boolean | `true` | Also read each keyword's top rated list. |
| `addItemDetails` | boolean | `false` | Open each listed product's item page and add 20 detail fields. One more page per product, charged as item details (see Pricing) only when the item page was read. |
| `maxProductsPerKeyword` | integer | `60` | Most products delivered per keyword, 1 to 1,000. Above 60 a keyword uses deep search. Categories stop at 20. |
| `maxProductsPerShop` | integer | `60` | Most products delivered per shop, 1 to 60. |
| `useResidentialProxy` | boolean | `true` | Retry deep search pages Taobao refuses on datacenter proxy through a residential proxy, at no extra cost to you. |
| `maxProducts` | integer | `1000` | The run stops after this many products, 1 to 20,000. |
| `minPrice` | integer | none | Leave out products below this price in yuan (promo price when there is one). Never charged. |
| `maxPrice` | integer | none | Leave out products above this price in yuan. Never charged. |
| `onlyNewProducts` | boolean | `false` | Deliver only products this input has not delivered before. Kept per set of keywords, categories and items. |

At least one of `keywords`, `categories`, `shops` or `items` is needed. A run with none of them stops at once, writes one info row and charges nothing, not even the start fee.

### What data do you get?

One row per product. Fields are grouped below; empty fields are left out of a row rather than sent as null.

- **Product:** `item_id`, `title`, `title_is_complete`, `url` (the Taobao item link, which opens the Tmall page for Tmall items), `taobao_list_url`, `image_url`, `images`, `selling_points`, `description_match_score`, `free_shipping`, `area_limited`, `review_tags`.
- **Price:** `price_cny`, `promo_price_cny`, `promo_label`, `price_hkd`, `price_twd`, `currency`, and `price_converted`, `promo_price_converted`, `converted_currency`, `fx_rate`, `fx_date`.
- **Shop and category:** `shop_id`, `shop_name`, `category_id`, `root_category_id`, `category_path`.
- **Where it came from:** `source` (keyword, category, shop or item), `source_list` (best-selling, top-rated, shop-listing or deep-search), `search_filter` (deep search rows: the slice), `keyword`, `keyword_original`, `input_category_id`, `input_shop_id`, `rank`, `list_total_count`, `input`, `scraped_at`.
- **Shop rows:** `shop_profile` with `shop_id`, `shop_name`, `seller_user_id`, `logo_url`, `dsr_description`, `dsr_service`, `dsr_logistics`, `catalog_count` and `shop_page_url`.
- **Item page details** (item inputs, and every row when `addItemDetails` is on; `details_added` says which): `platform`, `tmall_url`, `ships_from`, `page_price_cny`, `page_original_price_cny`, `has_price_range`, `price_low_cny`, `price_high_cny`, `review_count_text`, `review_count_min`, `review_highlights`, `sellable_languages`, `shop_icon`, `shop_new_item_note`, `seller_user_id`, `seller_type`, `seller_credit_level`, `shop_url`, `shop_opened_at`, `shop_item_count`, `shop_new_item_count`, `dsr_description`, `dsr_service`, `dsr_logistics`, `payment_methods`, `latest_review` (rating, text, date, variant, images, videos, follow_up), `has_more_reviews`, `review_summary`, `rating_good_percent`, `rating_neutral_percent`, `rating_bad_percent`, `rating_good_count_text`, `rating_bad_count_text`, `ai_title`, `ai_description`, `ai_keywords`, `ai_selling_points`, and `details_error` when the item page could not be read.

#### Stable fields for automations

These fields were present in every one of the 182 rows of the test run, and in every item row. Their names will not change.

| Field | What it holds |
|---|---|
| `item_id` | Taobao item id, as text |
| `title` | Product title (full on keyword and category rows) |
| `title_is_complete` | false when Taobao shortened the title |
| `url` | Taobao item link |
| `price_cny` | Price in yuan |
| `currency` | Always CNY |
| `shop_id` | Taobao shop id |
| `shop_name` | Shop name |
| `category_id` | Leaf category id |
| `root_category_id` | Top level category id |
| `category_path` | Category breadcrumb, top level first |
| `image_url` | Main image |
| `source` | keyword, category, shop or item |
| `details_added` | true when the item page details are filled |
| `scraped_at` | When the row was saved, ISO 8601 |

#### Output examples

A best seller for 连衣裙 (dress), without item details:

```json
{
  "item_id": "1079130401408",
  "title": "DoggyQin 蚂蚁腰/粗棒高克重绵羊毛连衣裙女法式毛衣外套毛茸裙裤",
  "title_is_complete": true,
  "url": "https://item.taobao.com/item.htm?id=1079130401408",
  "price_cny": 469,
  "promo_price_cny": 469,
  "promo_label": "超级立减活动价",
  "price_hkd": 554.17,
  "shop_id": "114424207",
  "shop_name": "DoggyQin",
  "category_id": "50010850",
  "root_category_id": "16",
  "category_path": "女装 > 连衣裙 > 连衣裙",
  "image_url": "https://img.alicdn.com/imgextra/i2/2275483160/O1CN01huUiao0q2IJ2vH2e_!!2275483160.jpg",
  "description_match_score": 4.78,
  "free_shipping": false,
  "source": "keyword",
  "source_list": "best-selling",
  "keyword": "连衣裙",
  "rank": 1,
  "list_total_count": 66545,
  "details_added": false
}
```

A deep search product for 蓝牙耳机 (Bluetooth earbuds), from a price slice (local run, 31 Oct 2026):

```json
{
  "item_id": "1071264788238",
  "title": "OPPO Air5Pro真无线蓝牙耳机入耳式主动降噪超长续航适配苹果华为",
  "price_cny": 699,
  "promo_price_cny": 699,
  "promo_label": "优惠价",
  "price_converted": 105,
  "converted_currency": "USD",
  "shop_name": "OPPO鑫楚天专卖店",
  "category_path": "影音电器 > 蓝牙耳机 > 蓝牙耳机",
  "source": "keyword",
  "source_list": "deep-search",
  "search_filter": "price 500 to 749 CNY, best sellers first",
  "keyword": "蓝牙耳机",
  "rank": 10,
  "list_total_count": 8907,
  "details_added": false
}
```

A product from a shop (`shops: ["67095450"]`):

```json
{
  "item_id": "627765382298",
  "title": "绿联usb3.0移动硬盘数据线连接充电线延长加长u适用于电脑三星note3手机东芝wd希捷seagate西部toshiba硬盘盒",
  "price_cny": 30.9,
  "shop_id": "67095450",
  "shop_name": "绿联数码旗舰店",
  "source": "shop",
  "source_list": "shop-listing",
  "input_shop_id": "67095450",
  "rank": 34,
  "list_total_count": 1292,
  "shop_profile": {
    "shop_id": "67095450",
    "shop_name": "绿联数码旗舰店",
    "seller_user_id": "713464357",
    "dsr_description": 4.8,
    "dsr_service": 4.8,
    "dsr_logistics": 4.9,
    "catalog_count": 1292,
    "shop_page_url": "https://www.taobao.com/list/dianpu/67095450.htm"
  }
}
```

A top rated product for 保温杯 (vacuum flask), with the seller's selling points:

```json
{
  "item_id": "826563498695",
  "title": "迪士尼迷你保温杯儿童水杯小巧水壶便携幼儿园宝宝吸管口袋杯子",
  "price_cny": 79,
  "promo_price_cny": 79,
  "promo_label": "新品秒杀",
  "shop_name": "Disney迪士尼文具旗舰店",
  "category_path": "餐饮具 > 杯子/水壶 > 保温杯 > 保温杯",
  "selling_points": ["迷你杯身 便携实用", "食品硅胶吸管 安全健康"],
  "description_match_score": 4.86,
  "source": "keyword",
  "source_list": "top-rated",
  "keyword": "保温杯",
  "rank": 10,
  "list_total_count": 32471,
  "details_added": false
}
```

A best seller for 机械键盘 (mechanical keyboard) with `addItemDetails` on. The item page price can differ from the list price while a promotion runs:

```json
{
  "item_id": "991372610509",
  "title": "机械手感有线静音电脑键盘鼠标套装笔记本游戏电竞外设三件套办公",
  "price_cny": 34.8,
  "shop_name": "天天特卖工厂",
  "category_path": "电脑硬件/显示器/电脑周边 > 键盘 > 机械键盘",
  "source_list": "best-selling",
  "keyword": "机械键盘",
  "rank": 1,
  "platform": "tmall",
  "tmall_url": "https://detail.tmall.com/item.htm?id=991372610509",
  "ships_from": "江西宜春",
  "page_price_cny": 28.8,
  "seller_type": "tmall_or_business",
  "seller_credit_level": 20,
  "shop_opened_at": "2018-05-11 18:37:50",
  "shop_item_count": 122302,
  "dsr_description": 4.7,
  "dsr_service": 4.8,
  "dsr_logistics": 4.8,
  "payment_methods": ["蚂蚁花呗", "信用卡支付", "集分宝"],
  "latest_review": {
    "rating": 5,
    "text": "键盘膜非常好，手感非常好，外表好看，而且价格便宜...",
    "date": "2026.09.22 09:50",
    "variant": "颜色分类:黑色蓝光【单键盘】"
  },
  "has_more_reviews": true,
  "details_added": true
}
```

An item looked up from a Tmall link (`https://detail.tmall.com/item.htm?id=1078907312106`):

```json
{
  "item_id": "1078907312106",
  "title": "【新款18勃艮第红色...",
  "title_is_complete": false,
  "price_cny": 116,
  "shop_name": "图拉斯数码旗舰店",
  "category_path": "阿里B2C商城 > 手机及配件 > 手机配件 > 保护套/硅胶套",
  "source": "item",
  "platform": "tmall",
  "ships_from": "广东东莞",
  "shop_opened_at": "2012-05-28 11:41:20",
  "shop_item_count": 242,
  "dsr_description": 4.7,
  "dsr_service": 4.8,
  "dsr_logistics": 4.8,
  "latest_review": {
    "rating": 5,
    "date": "2026.09.18 16:28",
    "variant": "适用手机型号:iPhone 18 Pro Max;颜色分类:【雪雾 | 焕新紫 | 磁吸款】冰感磁吸✅️细腻抗指纹✅️超薄裸感"
  },
  "details_added": true
}
```

Reviewer names are masked by Taobao itself and are not collected.

### Pricing

Pay per event: you pay for products delivered, plus a flat start fee.

| Event | Free | Bronze | Silver | Gold and above |
|---|---|---|---|---|
| Product delivered (per 1,000) | $2.99 | $2.69 | $2.39 | $1.99 |
| Item details added, with `addItemDetails` on (per 1,000) | $3.00 | $2.70 | $2.40 | $2.00 |
| Run start (once per run, with the first product) | $0.005 | $0.005 | $0.005 | $0.005 |

With `addItemDetails` on, each product whose item page was read also pays the item details fee, so a product with details costs $5.99 per 1,000 on the Free plan ($3.99 on Business). A product whose item page could not be read is charged as a plain product. Plus a flat $0.005 per run whatever memory you choose, charged together with the first product delivered. Deep search and shop products are priced like any other product; the residential proxy deep search sometimes uses costs you nothing extra.

Never charged:

- a product already delivered in the same run (found under a second keyword or in both lists);
- products outside `minPrice` and `maxPrice`;
- products delivered in an earlier run when `onlyNewProducts` is on;
- keywords and categories Taobao has no page for, and items Taobao no longer has;
- pages Taobao refused;
- listings Taobao shows with a placeholder price (99,999,999 yuan) in deep search;
- a run that delivers no product at all (no start fee either);
- the info rows (`_type: "info"`): the note that explains a run that delivered nothing, and the closing note at the end of a run that did;
- a run whose input has nothing to scrape (not even the start fee).

You can cap spending in Apify Console with the run's maximum charge; the actor stops cleanly when it is reached.

### FAQ

#### What is Taobao, and does this cover Tmall too?

Taobao (淘宝) is Alibaba's largest consumer marketplace in China, and Tmall (天猫) is its section for brand and flagship stores. Both share one catalogue, so a keyword returns Taobao and Tmall products together. With item details on, `platform` says which one a product belongs to and `tmall_url` gives the Tmall link.

#### How many products can I get per keyword?

Up to 1,000. Taobao's own lists give about 40 different products per word (20 best sellers, up to 40 top rated, overlapping), and Taobao ignores page numbers on them. Above 60, deep search reads the word again in slices: price bands around its typical price (a band that comes back full is split in two), relevance order and the top brands. Each slice is a different 20 products. A common word gives several hundred; in a local test on 31 Oct 2026, 蓝牙耳机 gave 300 different products in 22 seconds and 口红 (from `lipstick`) 150 in 34 seconds. The search stops when 5 slices in a row bring nothing new, so a narrow word may give fewer than you asked for. `list_total_count` tells you how many products Taobao counts for the word. Categories stay at 20 per category: the deep search host refuses category pages.

#### Can I get a shop's products?

Yes. Put shop ids or shop links in `shops` (or in `startUrls`). Each shop gives up to 60 of its products, which is what Taobao's shop page shows, plus `shop_profile` with the shop's three scores, seller id, logo and `catalog_count`, the number of products in the whole shop. A `shop.m.taobao.com` link that only carries `user_id` names the seller, not the shop, and cannot be read; open it once and paste the `shop<number>.taobao.com` address.

#### Which keywords work?

Common product words work, in Chinese or English. Taobao builds a page for each word it sees searched often. Of 124 English product words we tried on 23 Oct 2026, Taobao answered 91 itself and the built-in list covered all 124; "mechanical keyboard" has no English page but is turned into 机械键盘, which returned 40 products. Very specific phrases (a model name, a brand plus a model) often have no page. A word without a page is reported in the run summary as `no_taobao_page` and costs nothing. A link to a `www.taobao.com/list/product/` page always names a word that has a page.

#### Can I get product details from an item link?

Yes. Paste item ids or links into `items`. You get the item page's price, ships from, the shop with its scores, size and open date, payment methods and a recent review. Taobao shortens titles on this page, so `title_is_complete` is false there; the same product from a keyword or category run has its full title. Variant (SKU) prices, stock, full image galleries and full review lists are not on the pages this actor reads.

#### Can I get every SKU variant with its stock, or all the reviews?

No, and this is deliberate. Variant lists with per variant price and stock, sales counts and review pages are only served by Taobao's item.taobao.com, detail.tmall.com and mobile API hosts. On 23 and 31 Oct 2026 every one of them answered our anonymous test requests with a login or verification page (from datacenter and from US, Hong Kong, Singapore and China residential addresses, and even from a real browser). The actor does not log in, does not solve verification pages and does not open those hosts. What the open pages do give is in the columns above: the price (and a range when Taobao shows one), how many buyers reviewed the item, the remarks buyers make most with counts, one recent review with the variant bought, and the seller's three scores.

#### Do I need a Taobao account, cookies or an app?

No. The actor reads public pages as an anonymous visitor. It never logs in, never asks for cookies and never opens an app.

#### Which Taobao pages does it read?

Keywords, categories, shops and items are read from www.taobao.com/list/, the pages Taobao publishes for every visitor.

Deep search (more than 60 per keyword) also reads sg.world.taobao.com, Taobao's Singapore copy of the same keyword pages, which answers price bands, sort orders and brand filters where www.taobao.com does not. It runs whenever you ask for more than 60 products per keyword.

The search site, item.taobao.com, detail.tmall.com and the mobile API hosts are never opened, even when you paste their links (the actor only reads the id out of the link).

#### How fresh is the data?

Live. Every run reads Taobao's pages at that moment; nothing comes from a cache or database. Taobao's lists shift during the day as sales move, so a daily schedule with `onlyNewProducts` shows you what entered the lists.

#### What proxy does it use?

Apify's datacenter proxy, included in your plan. You do not need to set anything. In our tests every one of 38 page requests from datacenter addresses was answered on the first try, with no verification page. Deep search pages are tried once on datacenter and, when Taobao refuses them, again on a residential proxy (Singapore); that is on the actor, not on your bill, and `useResidentialProxy` turns it off. If Taobao ever answers with a verification page, the actor does not try to get past it: the page counts as refused, it tries again later on a new address, and it stops the run if refusals keep coming, without charging for anything not delivered.

#### What prices are in the rows?

`price_cny` is the price Taobao shows on the list, and `promo_price_cny` with `promo_label` the promotion price when one runs. The HKD and TWD prices are Taobao's own conversions. With item details, `page_price_cny` is the price on the item page at that moment, which can differ from the list price while a promotion runs. Prices are in yuan and before shipping.

#### Can I run it on a schedule and get only new products?

Yes. Create a schedule in Apify Console and turn on `onlyNewProducts`. The actor remembers up to 50,000 products per set of keywords, categories and items, and later runs deliver and charge only new ones.

#### What formats can I export?

JSON, CSV, Excel, XML, HTML and RSS from the dataset, or straight into Google Sheets, a webhook or the API.

#### Can I use it from Claude, ChatGPT or another AI assistant?

- Connector URL: `https://mcp.apify.com/?tools=themineworks/taobao-products-scraper`.
- Claude: Settings > Connectors > Add custom connector, paste the URL, sign in with Apify.
- ChatGPT: developer mode, add an MCP connector with the URL, sign in with Apify.
- Cursor or VS Code: add it as an HTTP MCP server with that URL.
- Claude Code: `claude mcp add -t http taobao-products-scraper "https://mcp.apify.com/?tools=themineworks/taobao-products-scraper"`.

#### Is it legal to scrape Taobao?

The actor reads only public product pages, without logging in. Product, price and shop data is business data. Reviewer names are masked by Taobao and not collected. You are responsible for how you use the data, including Taobao's terms and data protection laws such as GDPR, CCPA and China's PIPL.

### Integrations

- **Google Sheets:** send each run's dataset to a sheet with Apify's Google Sheets integration.
- **Make, Zapier and n8n:** start a run and pick up the products in your own flow.
- **Webhooks:** get a call when a run finishes, with the dataset link.
- **API and SDKs:** run it from Python or JavaScript with the Apify client, as in the block above.
- **MCP clients:** Claude, Cursor and other MCP clients can call it through mcp.apify.com.

### More from The Mine Works

**More tools**

- [G2 Reviews Scraper](https://apify.com/themineworks/g2-reviews-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Tennis Match & Player Data Scraper](https://apify.com/themineworks/tennis-match-data?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Flashscore Tennis Scraper](https://apify.com/themineworks/flashscore-tennis-results-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [LandWatch Scraper](https://apify.com/themineworks/landwatch-land-for-sale-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Capterra Reviews Scraper](https://apify.com/themineworks/capterra-software-reviews-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Google Hotels Prices Scraper](https://apify.com/themineworks/google-hotels-prices-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Google Lens OCR Scraper](https://apify.com/themineworks/google-lens-ocr-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [WeChat Article Scraper 微信公众号文章](https://apify.com/themineworks/wechat-article-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Social media and video**

- [Threads Scraper](https://apify.com/themineworks/threads-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Reddit Scraper](https://apify.com/themineworks/reddit-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Threads Search Scraper](https://apify.com/themineworks/threads-search-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Instagram Profile Scraper](https://apify.com/themineworks/instagram-profile-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Leads and business directories**

- [B2B Leads Finder](https://apify.com/themineworks/b2b-leads-finder?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Skip Trace Lookup](https://apify.com/themineworks/skip-trace-lookup?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Google Maps Email Scraper](https://apify.com/themineworks/maps-leads?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [JustDial Scraper](https://apify.com/themineworks/justdial-business?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Marketing, SEO and reviews**

- [Facebook Ad Library Scraper](https://apify.com/themineworks/meta-ad-library-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Google Ads Transparency Scraper](https://apify.com/themineworks/google-ads-transparency?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Similarweb Scraper](https://apify.com/themineworks/similarweb-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Google News Scraper](https://apify.com/themineworks/google-news?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**LinkedIn**

- [LinkedIn Company Scraper](https://apify.com/themineworks/linkedin-company-details?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [LinkedIn Post Scraper](https://apify.com/themineworks/linkedin-post-search?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [LinkedIn Employees Scraper](https://apify.com/themineworks/linkedin-employees?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [LinkedIn Profile Scraper](https://apify.com/themineworks/linkedin-profile-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Real estate**

- [Zillow Rentals Scraper](https://apify.com/themineworks/zillow-rental-listings?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Zillow Sold Comps Scraper](https://apify.com/themineworks/zillow-recently-sold?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Housing.com Scraper](https://apify.com/themineworks/housing-com-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [India Real Estate MCP](https://apify.com/themineworks/india-real-estate-mcp?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Science, health and government data**

- [CourtListener Scraper](https://apify.com/themineworks/courtlistener-court-records?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Socrata Open Data Scraper](https://apify.com/themineworks/socrata-open-data?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Academic Research MCP](https://apify.com/themineworks/academic-research-mcp?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [OpenAlex Scraper](https://apify.com/themineworks/openalex-scholarly-works?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Jobs and hiring**

- [Foundit Monster India Jobs](https://apify.com/themineworks/foundit-jobs-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Hirist Jobs Scraper](https://apify.com/themineworks/hirist-jobs-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [India Jobs MCP](https://apify.com/themineworks/india-jobs-mcp?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Naukri Jobs Scraper](https://apify.com/themineworks/naukri-jobs?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Company and business data**

- [GST Taxpayer Lookup](https://apify.com/themineworks/gst-taxpayer-lookup?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Company Domain Finder](https://apify.com/themineworks/company-domain-finder?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [World Bank Trade Scraper](https://apify.com/themineworks/global-trade-data?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [SEC EDGAR Filings Scraper](https://apify.com/themineworks/sec-edgar-filings?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**E-commerce and marketplaces**

- [Ozon.ru Scraper](https://apify.com/themineworks/ozon-product-search?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Amazon Product Scraper](https://apify.com/themineworks/amazon-products?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [⭐ Amazon Reviews Scraper](https://apify.com/themineworks/amazon-reviews?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Carsales.com.au Scraper](https://apify.com/themineworks/carsales-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Food and local services**

- [NoBroker Scraper](https://apify.com/themineworks/nobroker-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Swiggy Restaurant Scraper](https://apify.com/themineworks/swiggy-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Zomato Scraper](https://apify.com/themineworks/zomato-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Developer and AI tools**

- [Website to Markdown Crawler](https://apify.com/themineworks/rag-crawler?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [GitHub Repo Scraper](https://apify.com/themineworks/github-repo-intelligence?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [GitHub Skill Finder](https://apify.com/themineworks/github-skill-discovery?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [GitHub Trending Scraper](https://apify.com/themineworks/github-trending-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

### Support

Found a problem or want a field added? Open an issue on the Issues tab and include the run link. For a new marketplace or data source, email dmineworks@gmail.com.

*Taobao Products Scraper returns the products Taobao and Tmall rank as best sellers and top rated for your keywords and categories, with prices, shops, categories and seller scores, read from the pages Taobao opens to every visitor.*

# Actor input Schema

## `keywords` (type: `array`):

One per line: a product word in Chinese (手机壳, 连衣裙, 机械键盘) or in English (phone case, lipstick, wireless earbuds), or a keyword page link. English words are turned into the Chinese word Taobao has a page for (see Translate English keywords). Each gives Taobao's 20 best sellers for the word, plus up to 40 top rated ones, and with Products per keyword above 60 a deep search that goes up to 1,000. Taobao only has pages for common product words; any other word is reported as having no page and costs nothing. Up to 200 per run.

## `startUrls` (type: `array`):

Paste any mix, one per line: Taobao or Tmall product links (item.taobao.com, detail.tmall.com, world.taobao.com, www.taobao.com/list/item), bare item ids, keyword page links (www.taobao.com/list/product, world.taobao.com/product, s.taobao.com/search?q=), category page links, or shop links (shop123456.taobao.com, www.taobao.com/list/dianpu/123456.htm). Each line is sorted into keywords, categories, shops and items for you. The links themselves are never opened: the actor reads the id or word from them and uses Taobao's public pages. Up to 1,000 per run.

## `categories` (type: `array`):

One per line: a Taobao category id (150704) or a www.taobao.com/list/category/ link. Each gives the category's 20 best sellers. Category ids are in every row (category_id, root_category_id). Up to 100 per run.

## `shops` (type: `array`):

One per line: a Taobao shop id (the number in shop67095450.taobao.com), a shop link (shop67095450.taobao.com, www.taobao.com/list/dianpu/67095450.htm, world.taobao.com/dianpu/67095450.htm). Each gives up to 60 of the shop's products with the shop's name, seller id, its three scores and how many products the whole shop has (shop_profile). A shop.m.taobao.com link with only user_id names the seller, not the shop, and cannot be read. Up to 200 per run.

## `items` (type: `array`):

One per line: a Taobao item id (971278517006) or any Taobao or Tmall item link that carries the id. Each gives one row with price (and price range), ships from, the seller's three scores, shop age and size, how many buyers reviewed it, what buyers mention most and a recent review. Taobao shortens the title on this page; keyword rows carry the full title. Short m.tb.cn links are not read. Up to 1,000 per run.

## `translateKeywords` (type: `boolean`):

Turn English keywords into the Chinese word Taobao has a page for (a built-in list of verified product words first, then the English word as Taobao itself understands it, then a free translation service). The row keeps your English word in keyword_original. Off: keywords are used exactly as written.

## `sortBy` (type: `string`):

Taobao ranks its lists by sales. The price and score sorts reorder the products read for each keyword (up to 60); Taobao's pages cannot be asked for another order, so they do not reach beyond those 60.

## `currency` (type: `string`):

Adds price_converted and promo_price_converted: the yuan price converted at the day's rate (fx_rate and fx_date are in every row). Taobao's own HKD and TWD prices stay in price_hkd and price_twd. Choose CNY to leave the converted columns empty.

## `includeTopRated` (type: `boolean`):

For each keyword, also read Taobao's top rated list (up to 40 products, about half of them not among the 20 best sellers). Off: only the 20 best sellers.

## `addItemDetails` (type: `boolean`):

Open each listed product's item page and add where it ships from, Tmall or Taobao, price range, how many buyers reviewed it and what they mention most, the share of positive, neutral and negative ratings (Taobao shops), the seller's description, service and logistics scores, shop open date, shop size, payment methods, a recent review with its photos, and Taobao's own generated summary where it has one. One more page per product, so the run takes longer. Charged as a separate details event on rows where the item page was read.

## `freeShippingOnly` (type: `boolean`):

Keep only products Taobao marks as free shipping. Products left out are never charged.

## `maxProductsPerKeyword` (type: `integer`):

Most products delivered for one keyword or category. Up to 60 come from Taobao's own best seller and top rated pages. Above 60, each keyword is read again in slices (price bands, sort orders, brands) on Taobao's Singapore keyword pages until this many new products are found or the slices run dry (deep search, needs the option below); 300 to 500 is typical for a common word. Categories stop at 20.

## `maxProductsPerShop` (type: `integer`):

Most products delivered for one shop. Taobao's shop page shows up to 60.

## `useResidentialProxy` (type: `boolean`):

Deep search pages are tried once on datacenter proxy; when Taobao refuses them they are tried again on a residential proxy, at no extra cost to you. Off: deep search stays on datacenter and returns fewer products when Taobao refuses it.

## `maxProducts` (type: `integer`):

The run stops once this many products are delivered.

## `minPrice` (type: `integer`):

Leave out products below this price in yuan (the promo price when there is one). Products left out are never charged.

## `maxPrice` (type: `integer`):

Leave out products above this price in yuan. Products left out are never charged.

## `onlyNewProducts` (type: `boolean`):

For schedules: remember every product this input delivered and deliver only new ones next time. Products seen before are skipped and never charged. The memory is kept per set of keywords, categories and items.

## Actor input object example

```json
{
  "keywords": [
    "手机壳",
    "wireless earbuds"
  ],
  "translateKeywords": true,
  "sortBy": "sales",
  "currency": "USD",
  "includeTopRated": true,
  "addItemDetails": false,
  "freeShippingOnly": false,
  "maxProductsPerKeyword": 60,
  "maxProductsPerShop": 60,
  "useResidentialProxy": true,
  "maxProducts": 1000,
  "onlyNewProducts": false
}
```

# Actor output Schema

## `results` (type: `string`):

No description

## `summary` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "keywords": [
        "手机壳",
        "wireless earbuds"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("themineworks/taobao-products-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "keywords": [
        "手机壳",
        "wireless earbuds",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("themineworks/taobao-products-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "keywords": [
    "手机壳",
    "wireless earbuds"
  ]
}' |
apify call themineworks/taobao-products-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,themineworks/taobao-products-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/tl3xHG9gCeJf1Z5w4/builds/sJXrSL3cHE9w6hczx/openapi.json
