Xiaomi Mi App Store Scraper
Pricing
from $0.86 / 1,000 app listings
Xiaomi Mi App Store Scraper
Extract app listings and full metadata from the Xiaomi Mi App Store - both the Chinese store (app.mi.com) and the global store. Names, developers, ratings, per-region ratings, download counts, descriptions, changelogs, screenshots, permissions, version and category.
Pricing
from $0.86 / 1,000 app listings
Rating
0.0
(0)
Developer
Unfenced Group
Maintained by CommunityActor stats
1
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share

Extract app listings and full app metadata from the Xiaomi Mi App Store — names, developers, ratings, per-region rating breakdowns, download counts, descriptions, changelogs, screenshots, permissions, version, size and category — from both the Chinese store (app.mi.com) and the global store (global.app.mi.com). No API key required.
Why this scraper?
🎯 The complete app record
Not just the search-card basics. With detail enrichment on, every app comes back with its full description, changelog, screenshots, requested permissions, developer, update date and privacy policy URL.
🇨🇳 🌍 Both Mi App Stores
Browse the Chinese store by category, look up keyword suggestions, or fetch any app by package name. The global store returns localised metadata — including a real download count — for any package name you pass.
🗂️ Category browse and direct lookup
Sweep an entire Chinese-store category, resolve keyword suggestions, or fetch specific apps directly by their Android package name. Mix all three in a single run.
⭐ Ratings and market signals
Average rating, total rating count, a per-region rating breakdown (CN/HK/TW/IN/RU/ID) and — on the global store — the exact download count. The signals you need for market and competitor research.
🧾 Clean, structured output
One flat record per app, every field always present and null when the store does not publish it. Ready for a spreadsheet, a database or an ML pipeline.
Input parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
store | string | "cn" | Which store to scrape: cn (app.mi.com, full discovery) or global (global.app.mi.com, by package name). |
categoryIds | array | [] | Chinese-store category IDs to browse (e.g. 15=Games, 8=Communication). Ignored when store=global. |
searchQueries | array | [] | Keywords to resolve to Mi App Store search suggestions (CN store). Ignored when store=global. |
packageNames | array | [] | Android package names to fetch full detail for (e.g. com.tencent.mm). Works for both stores; the only discovery mode for global. |
globalLocale | string | "ID" | Country code (lo) for the global store, e.g. ID, IN, RU. Only used when store=global. |
globalLanguage | string | "en" | Language code (la) for the global store, e.g. en, ru, id. Only used when store=global. |
maxItemsPerQuery | integer | 100 | Max apps per category browse. Set to 0 for unlimited. |
fetchDetails | boolean | true | Enrich each app with detail-page fields. Disable for a faster, lighter run. |
Chinese-store category IDs
15 Games · 2 Video & Audio · 5 System Tools · 8 Communication · 9 Photography · 10 Lifestyle · 11 Shopping · 12 News & Reading · 19 Education · 20 Health · 23 Travel & Navigation · 27 Parenting
Output schema
Every field below is present on every record. Fields the store does not publish for a given app are returned as null rather than omitted.
Always present
| Field | Type | Description |
|---|---|---|
store | string | cn or global. |
appId | number|null | Numeric Mi App Store app ID (CN store). |
packageName | string|null | Android package name (e.g. com.tencent.mm). |
name | string | App display name. |
developerId | number|null | Numeric developer ID (CN store). |
developer | string|null | Developer or publisher name. |
category | string|null | Primary category. |
subCategory | string|null | Secondary category (CN store). |
categoryId | number|null | Numeric category ID (CN store). |
brief | string|null | Short tagline shown on the card (CN store). |
rating | number|null | Average rating. |
ratingCount | number|null | Total number of ratings. |
ratingByRegion | object|null | Per-region rating map, e.g. { "CN": 3.4, "ID": 4.8 }. |
downloadCount | number|null | Exact install count (global store). |
iconUrl | string|null | App icon image URL. |
sizeBytes | number|null | Package size in bytes. |
size | string|null | Human-readable package size (e.g. 1829.53M). |
versionName | string|null | Version label (e.g. 11.4.1.1). |
versionCode | number|null | Internal version code. |
apkPath | string|null | APK storage path fragment (CN store). |
updateTime | string|null | Last-update timestamp (ISO) where published as epoch. |
storeUrl | string|null | Public detail page URL. |
searchKeyword | string|null | Keyword that surfaced this record (null for direct lookups). |
contentHash | string | Stable 16-char fingerprint of the record. |
source | string | Always xiaomi-app-store. |
scrapedAt | string | ISO timestamp of capture. |
With fetchDetails: true
| Field | Type | Description |
|---|---|---|
introduction | string|null | Full app description as plain text. |
changeLog | string|null | "What's new" / changelog text. |
screenshots | array|null | Screenshot image URLs. |
permissions | array|null | Requested app permissions (CN store). |
privacyPolicyUrl | string|null | Developer privacy policy URL (CN store). |
updateDate | string|null | Update date as published on the detail page (CN store). |
Example record
{"store": "cn","appId": 108048,"packageName": "com.tencent.tmgp.sgame","name": "王者荣耀","developerId": 237950,"developer": "深圳市腾讯计算机系统有限公司","category": "网游RPG","subCategory": "网游RPG","categoryId": 15,"brief": "全新赛季现已上线!","rating": 7.0,"ratingCount": 416387,"ratingByRegion": { "CN": 3.4 },"downloadCount": null,"iconUrl": "http://file.market.xiaomi.com/thumbnail/PNG/l62/AppStore/0af7...","sizeBytes": 1918398,"size": "1829.53M","versionName": "11.4.1.1","versionCode": null,"apkPath": "AppStore/059d5b54...","updateTime": null,"storeUrl": "https://app.mi.com/details?id=com.tencent.tmgp.sgame","searchKeyword": null,"introduction": "《王者荣耀》是腾讯第一5V5团队公平竞技手游...","changeLog": "【版本更新内容】1.新赛季...","screenshots": ["http://file.market.xiaomi.com/thumbnail/jpeg/l395/AppStore/..."],"permissions": ["获取网络状态", "读取手机状态"],"privacyPolicyUrl": null,"updateDate": "2026-06-25","contentHash": "a1b2c3d4e5f60718","source": "xiaomi-app-store","scrapedAt": "2026-07-18T09:15:00.000Z"}
Examples
Browse the entire Games category (CN store) with full details:
{"store": "cn","categoryIds": ["15"],"maxItemsPerQuery": 200,"fetchDetails": true}
Fast category sweep without detail enrichment:
{"store": "cn","categoryIds": ["8", "9"],"maxItemsPerQuery": 300,"fetchDetails": false}
Look up specific apps by package name (CN store):
{"store": "cn","packageNames": ["com.tencent.mm", "com.shenlan.m.reverse1999.mi"],"fetchDetails": true}
Global store — full metadata for apps in Indonesia:
{"store": "global","packageNames": ["com.whatsapp", "com.instagram.android"],"globalLocale": "ID","globalLanguage": "en"}
💰 Pricing
Pay-per-result — you only pay for successfully retrieved apps. Failed retries are never charged.
- $0.99 per 1,000 apps for listing records.
- $1.99 per 1,000 apps additional when full details are fetched (
fetchDetails: true) — the full description, changelog, screenshots and permissions.
Turn fetchDetails off for listing-only records at the lower rate.
Performance
| Run size | Typical time |
|---|---|
| 100 apps (details on) | 1–3 minutes |
| 300 apps (details on) | 5–9 minutes |
| 300 apps (details off) | under 1 minute |
Detail enrichment fetches one extra request per app. Turn it off for the fastest catalog sweeps.
Known limitations
- Global discovery is by package name. The global store's browse and search pages are client-rendered, so category browse works on the Chinese store only. Supply package names to pull global records.
- CN keyword search returns suggestions, not full apps. The Chinese store's suggestion endpoint returns app-name leads; feed those names or their package names back in for full records.
- Some fields depend on the store and developer. Download count is a global-store field; permissions and privacy policy are Chinese-store detail fields; both are
nullwhere not published. - Chinese-store metadata is in Chinese. Names, categories and descriptions come back as published — in Chinese for the CN store, localised for the global store.
Technical details
- Source: Xiaomi Mi App Store — app.mi.com (China) and global.app.mi.com (international)
- Coverage: category browse, keyword suggestions and direct package-name lookup
- Retry: automatic retry on network errors with exponential backoff
Rate this actor
If this scraper does its job, a short review on the Reviews tab helps other users find it. Something not working? Open an issue on the Issues tab instead — issues get fixed.
Need a custom scraper?
Unfenced Group builds Apify actors for any website — for free.
If the site you need isn't in our portfolio yet, just ask. We scope, build, and publish it at no cost to you. You only pay for results — we absorb the compute and proxy costs ourselves. Same pay-per-result pricing, same quality, same standards as every actor in this portfolio.
Get in touch: www.unfencedgroup.nl