NetEase Cloud Music — Toplist & Playlist Scraper avatar

NetEase Cloud Music — Toplist & Playlist Scraper

Pricing

Pay per event

Go to Apify Store
NetEase Cloud Music — Toplist & Playlist Scraper

NetEase Cloud Music — Toplist & Playlist Scraper

Scrapes track rankings from NetEase Cloud Music (网易云音乐) toplists using the public API. Returns playlist info, rank positions, artist/album metadata, and popularity scores. Useful for music-licensing research and Spotify/Apple Music migration tooling.

Pricing

Pay per event

Rating

0.0

(0)

Developer

BowTiedRaccoon

BowTiedRaccoon

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

10 days ago

Last modified

Share

Scrapes track rankings and metadata from NetEase Cloud Music (网易云音乐) toplists and playlists using the public API. Returns playlist info, rank positions, artist/album metadata, and popularity scores — no login required.

What This Scraper Does

NetEase Cloud Music is one of China's two dominant streaming platforms (~600M MAU). This actor uses the unsigned public legacy API (/api/playlist/detail) to pull ranked track data from official toplists — 飙升榜 (Hot Rise), 新歌榜 (New Songs), 原创榜 (Original), 热歌榜 (Hot Songs), and 10+ others — as well as any user-supplied playlist ID.

Each run returns one flat record per track with full playlist context, making the output ready for chart analysis, playlist migration tooling, or music-licensing research.

Key Features

  • Covers 14 built-in official toplists by default (no configuration needed)
  • Accepts a custom list of playlist IDs to scrape arbitrary public playlists
  • Returns playlist-level stats (play count, subscriber count, cover URL) alongside every track record
  • Rank position within each playlist is included as rankPosition (1-indexed)
  • Multi-artist tracks are pipe-separated in artists and artistIds
  • No authentication, no captcha, no proxy required

Input

FieldTypeDefaultDescription
maxItemsinteger10Maximum number of track records to return across all playlists
playlistIdsarray[]List of NetEase playlist IDs. Leave empty to use all built-in toplists

Example Input

{
"maxItems": 500,
"playlistIds": [3779629, 19723756, 3778678]
}

Leave playlistIds empty to scrape all 14 built-in official toplists (~1,400 records total, one per track).

Output

Each record in the dataset represents one track in one playlist:

{
"playlistId": 3779629,
"playlistName": "飙升榜",
"playlistType": "toplist",
"playlistCoverUrl": "https://p3.music.126.net/...",
"playlistTrackCount": 100,
"playlistPlayCount": 3197395200,
"playlistSubscribedCount": 2797359,
"playlistUpdatedAt": "2026-06-01T00:10:00.510Z",
"rankPosition": 1,
"trackId": 3382908505,
"trackName": "玻璃",
"trackAlias": null,
"durationMs": 185040,
"artists": "Gareth.T",
"artistIds": "32944030",
"albumId": 376798712,
"albumName": "玻璃",
"albumCoverUrl": "http://p4.music.126.net/...",
"publishTimeMs": 1779206400000,
"trackShareUrl": "https://music.163.com/song?id=3382908505",
"isExplicit": false,
"popularityScore": 100,
"snapshottedAt": "2026-06-01T17:38:08.095Z"
}

Use Cases

  • Music-licensing research — identify trending Chinese tracks with artist/album attribution
  • A&R scouting — monitor chart movers across 14 official NetEase toplists
  • Playlist migration — extract track IDs for cross-platform mapping to Spotify/Apple Music via ISRC
  • Chart analytics — track popularity scores and rank shifts over time with periodic runs

Built-in Toplists

Playlist IDNameDescription
3779629飙升榜Hot Rise Chart
19723756新歌榜New Songs Chart
3778678原创榜Original Chart
2884035云音乐热歌榜Hot Song Chart
3778679云音乐飙升榜Rise Chart
71384707云音乐新歌榜New Music Chart
10520166抖音排行榜Douyin/TikTok Chart
745956260云音乐国际榜International Chart
991319590云音乐说唱榜Hip-Hop Chart
180106云音乐ACG音乐榜ACG Chart
60198云音乐韩语榜Korean Chart
3812895云音乐粤语榜Cantonese Chart
1978921795云音乐摇滚榜Rock Chart
2006421348云音乐民谣榜Folk Chart

Technical Notes

The actor calls the unsigned public legacy API endpoint (/api/playlist/detail?id=<id>). Each playlist returns up to 100 tracks in a single response. No authentication is required. Modern /weapi/* encrypted endpoints are intentionally avoided.