How it will work: 3 steps
- Follow us on ApifyThe tool is built and waits in the queue for the Apify Store. Apify is the cloud platform where our tools run.
- Paste your input and press StartNo code needed: you fill in a form (the input). It already has a working example. For example:
手机in Keywords. Each start is one run. - Download the resultsWhen the run ends, the results are in a table (the dataset). Open Output, press Export and pick Excel or CSV. JSON and the API are there too.
This tool is an Apify Actor: a small program that runs on Apify. You can also run it on a schedule, for example every Monday. New to it? Read how it works, step by step and the 8 words you need first.
What it does
Type keywords or paste JD.com (京东) product links, and get JD products as one row each: price in CNY, shop, 自营 (JD self-operated) flag, number of reviews, good rate in percent, images, categories and links. No JD login, no cookies, no API key.
- Search — for each keyword, it reads JD's public search results (京东热卖, re.jd.com) page by page. One row per product: price, shop, self-operated flag, review count (
5万+) and the same as a number (50000), good rate (99= 99% positive), main image, category IDs and the position in the results. - Product — for each JD product link or SKU number, it reads the public mobile product page: title, brand, shop, all images, categories and stock. Then it looks for the same SKU in JD search to add the price, review count and good rate. In our tests on real products the price was found for about 80–90% of them. JD Worldwide (京东国际, jd.hk) products work too.
Good for
- Find products by Chinese keyword and compare price, shop and review numbers.
- Track prices of the same keywords over time (run on a schedule and compare by
skuId). - Check how popular a product is:
commentsCountMinandgoodRatefor each SKU.
Not a good fit
- About 150–200 products per keyword. JD's public search stops there; later pages repeat. For more products, add more specific keywords (
华为手机,小米手机). - No review texts, no variant or specification lists, no seller ratings. These JD pages need a login.
- In Product mode the price is best-effort: JD hides prices on product pages without a login, so the Actor finds the price only when the same SKU appears in JD search for its title. When it does not, the row is
partialwith title, shop and images, andprice: null. - The order of results can differ from the JD app or search.jd.com. Prices are the ones JD shows to a visitor without an account (no member or coupon prices).
Who uses it
China market researchers
Compare price, shop and popularity for a keyword on JD.
Brands selling in China
Track prices of the same keywords over time.
Catalog teams
Add titles, images and shops to a list of JD SKUs.
Price
Prices will be shown after release.
Questions
Can I get review texts?
No. Review texts, specs and variants need a JD login, so they are not included.
Why is the price empty for some links?
JD hides prices on product pages. The tool finds the price only when the SKU is in search.
Why are prices different from the JD app?
The tool sees the price for a visitor without an account. Member prices, coupons and app offers are not included.
Does it work with JD Worldwide?
Yes. jd.hk products work in product mode.
Do I need a JD account, cookies or API key?
No. The Actor reads public JD pages without a login. It does not solve captchas or log in.
Are the results complete and fresh?
The rows show what JD's public search shows at fetchedAt. JD changes order and prices often. The Actor does not promise every product for a keyword.
Details
Step by step on Apify
- Open the Input tab.
- Keep Mode =
Search by keywordand the prefilled keyword手机in Keywords, or type your own (Chinese works best). - Keep Max products per keyword = 10 (prefill) or raise it.
- Click Start.
- Open the Output tab, view Products, and check
price,commentsCountandgoodRate.
Use cases
| Task | Input | You get | Key fields | Next step |
|---|---|---|---|---|
| Price research on JD | keywords | product | price, shop, selfOperated | Google Sheets, CSV |
| Popularity and rating check | keywords or productUrls | product | commentsCountMin, goodRate | spreadsheet, BI |
| Price tracking | keywords + schedule | product | skuId, price, fetchedAt | Dataset API, webhooks |
| Enrich a list of SKUs | productUrls (mode product) | product | title, brand, shop, images, inStock | your catalog |
Tips for better results
- Use more specific keywords for more products. JD stops at about 150 to 200 per keyword.
- Compare runs by skuId to track price changes.
- Split long link lists into runs of 50.
Limits and good to know
- product — each saved
completeorpartialproduct row - Up to 20 keywords per run, up to 1,000 products per keyword (JD gives about 150–200); up to 50 product links per run
- Measured: 20 keywords × 1,000 → 3,686 rows in 200 seconds; 3 keywords → 461 rows in 27 seconds; 50 real product links → 74–89 seconds; 100 product links that do not exist → 31 seconds. For more products, split the list into runs of 50
- The default run timeout is 300 seconds. The Actor stops on its own at about 240 seconds and keeps saved rows (
reason: DEADLINE)
Recent updates
Version 0.1 · 15 October 2026
- Initial release: JD.com (京东) products by keyword (price in CNY, shop, self-operated flag, review count, good rate, image, categories, position) and by product link or SKU, up to 50 per run, including JD Worldwide (jd.hk) products (title, brand, shop, all images, stock, and price when JD search shows it).
- No login, no cookies, pay per product row.
For developers
Sample result
One result from a real test run, in JSON. Real values change from run to run. In Excel or CSV each field is a column.
{
"skuId": "100298246508",
"title": "一加Ace 6T 12GB+256GB 黑色 oppo 第五代骁龙 8 165Hz 超高刷电竞屏 学生游戏电竞智能手机 国家补贴",
"price": 3389,
"currency": "CNY",
"shop": "一加手机京东自营旗舰店",
"shopId": "1000001947",
"selfOperated": true,
"brand": null,
"commentsCount": "5万+",
"commentsCountMin": 50000,
"goodRate": 99,
"url": "https://item.jd.com/100298246508.html",
"mobileUrl": "https://item.m.jd.com/product/100298246508.html",
"image": "https://img14.360buyimg.com/n0/jfs/t1/426075/25/1266/29522/69ead4abF0cc818dc/0083320320f82202.jpg",
"images": ["https://img14.360buyimg.com/n0/jfs/t1/426075/25/1266/29522/69ead4abF0cc818dc/0083320320f82202.jpg"],
"categoryIds": ["9987", "653", "655"],
"inStock": null,
"keyword": "手机",
"position": 1,
"totalResults": 7680,
"input": null,
"mode": "search",
"status": "complete",
"error": null,
"fetchedAt": "2026-10-15T09:51:01.331Z"
}Input settings (5)
The main fields of the input form. With the API you send them as JSON.
| Setting | Name in the API | Type | Example value |
|---|---|---|---|
| Mode | mode | string | "search" |
| Keywords | keywords | array | ["手机"] |
| Product URLs or SKUs | productUrls | array | |
| Max products per keyword | maxItems | integer | 10 |
| Proxy | proxyConfiguration | object | {"useApifyProxy": true} |
Use cases with this tool
Each guide shows all the steps and the other tools.



