NetEase Cloud Music Comments Scraper 网易云音乐
Pricing
from $3.00 / 1,000 comment records
NetEase Cloud Music Comments Scraper 网易云音乐
Scrape NetEase Cloud Music (网易云音乐) song comments: text, likes, reply threads, commenter nickname and avatar, and timestamps. Input a song URL or ID. No browser needed, uses the site's own comment API directly.
Pricing
from $3.00 / 1,000 comment records
Rating
0.0
(0)
Developer
GetAScraper
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
7 days ago
Last modified
Categories
Share
|
Get NetEase Cloud Music song comments, likes, and reply threads ready for your spreadsheet in minutes. Pull full comment text, engagement counts, and commenter identity from any 网易云音乐 song page, no login or browser required. |
|
💬 Full comments Comment text, like counts, and reply counts, sorted hot, time, or recommended. |
🧵 Reply threads Nested replies with who replied to whom, not just top-level comments. |
👤 Commenter identity Nickname and avatar on every row. No raw internal user IDs collected. |
⚡ No browser needed Reads the site's own comment feed directly, so every run is fast and cheap. |
NetEase Cloud Music Comments Scraper extracts song comments from music.163.com, NetEase Cloud Music (网易云音乐), one of the largest music platforms in China. Give it a song URL or ID and it returns comment text, like counts, reply counts, commenter nickname and avatar, timestamps, and optional nested reply threads, ready to download as JSON, CSV, or Excel. Run it on demand, schedule it to track a viral release day by day, or call it from your own pipeline through the Apify API.
🎧 What does NetEase Cloud Music Comments Scraper do?
Most NetEase Cloud Music tools on Apify pull track metadata, playlists, or chart rankings. This one is built for the comment sections themselves, the part of the platform where actual fan reaction, slang, and sentiment live. Point it at a song and it returns every top-level comment the platform will return in one pass, plus the pinned "hot" comments, plus nested replies if you turn that on. No account, cookie, or browser session is needed to read comments; the Actor talks to the platform's own comment feed directly.
🎯 Why use it
- I am a social-culture researcher looking to collect thousands of real fan comments on viral Chinese songs in order to analyze sentiment and slang trends at scale.
- I am an NLP dataset builder looking to gather authentic Chinese internet comment text and reply threads in order to train and evaluate language models on real conversational data.
- I am a music-marketing analyst looking to track comment volume and top fan reactions on a new release in order to report engagement back to my label or artist client.
🚀 How to use it
|
STEP 1 Paste a song URL or ID Add one or more music.163.com song links, or just the numeric song IDs. |
STEP 2 Pick sort order and limits Choose hot, time, or recommended order, and cap comments and replies per song. |
STEP 3 Run and export Click Start. Download results as JSON, CSV, or Excel, or pull them via the API. |
⚙️ Input
| Field | Type | Required | Description |
|---|---|---|---|
songUrls | array of strings | No | NetEase Cloud Music song page URLs, for example https://music.163.com/song?id=186016. Leave empty if you use songIds instead. |
songIds | array of strings | No | Numeric song IDs (the id= part of a song URL). Use this if you already have IDs on hand. |
sortType | enum | No | How to order top-level comments: recommended, hottest, or time. Hot pinned comments are always included regardless of this setting. Defaults to hottest. |
maxCommentsPerSong | integer | No | Cap on top-level comments per song. Popular songs can have millions of comments, so this keeps runs predictable. Defaults to 200. |
includeReplies | boolean | No | Fetch nested replies for every comment that has them. Adds one extra request per replied-to comment. Defaults to off. |
maxRepliesPerComment | integer | No | Cap on nested replies fetched per comment thread. Only applies when includeReplies is on. Defaults to 20. |
sinceCommentId | string | No | For repeat monitoring runs: paste the newest comment ID from your last run. Pagination stops as soon as that ID reappears, so you only get what is new. Works best with sortType set to time. |
fetchSongTitle | boolean | No | Look up the song's title and artist and attach them to every row. Adds one extra plain page request per song. Defaults to on. |
maxItems | integer | No | Hard cap on total rows (comments plus replies) across the whole run. Defaults to 500. |
debugLogging | boolean | No | Print a log line for every single comment and reply emitted, useful for troubleshooting a run. Defaults to off. |
proxyConfiguration | object | No | Proxy settings. Datacenter proxies (the default) work well; switch to residential only if a large run starts seeing blocked or empty responses. |
📦 Output
Every comment and reply becomes one row in your dataset. Here is a real example row from a live run:
{"songId": "186016","songTitle": "晴天(Sunny Day)","songArtist": "周杰伦","songUrl": "https://music.163.com/song?id=186016","commentId": "4956438","isReply": false,"isHot": true,"content": "高一听的,那时候遇到了孩儿他妈,然后就这么幸福下来了","likedCount": 823174,"replyCount": 14,"authorNickname": "蛋蛋是圆D","authorAvatarUrl": "http://p2.music.126.net/FwTFLzZFZOZO5WFL6-JRBg==/2755376139227068.jpg","time": 1413530574252,"timeStr": "2014-10-17","scrapedAt": "2026-07-19T06:25:28.792Z"}
You can download the dataset in JSON, CSV, Excel, HTML, or XML directly from the Apify Console, or pull it through the API.
Data table
| Field | Type | Description |
|---|---|---|
songId | string | Numeric NetEase song ID this row belongs to. |
songTitle | string | Song title, resolved from the song page when fetchSongTitle is on. |
songArtist | string | Performing artist, resolved the same way. |
songUrl | string | Canonical song page URL. |
commentId | string | Unique ID of this comment or reply. |
parentCommentId | string | For replies only: the top-level comment this reply belongs to. |
isReply | boolean | true for a nested reply, false for a top-level comment. |
isHot | boolean | true if this comment came from the platform's pinned "hot comments" set. |
content | string | The comment or reply text. |
likedCount | number | Number of likes on this comment or reply. |
replyCount | number | Number of replies under this comment (top-level comments only). |
authorNickname | string | Public display name of the commenter. |
authorAvatarUrl | string | Commenter's public avatar image URL. |
repliedToNickname | string | For replies only: the nickname of the person being replied to. |
time | number | Comment timestamp in Unix epoch milliseconds. |
timeStr | string | Comment date as a plain string, for example 2014-10-17. |
scrapedAt | string | ISO timestamp of when this Actor collected the row. |
💰 Pricing
Pricing is pay per result and is billed per row successfully saved to your dataset. Empty runs cost nothing. There are no fixed monthly subscriptions or hidden fees. Check the Actor's Pricing tab on Apify for the current rate per 1,000 results.
⭐ Enjoying NetEase Cloud Music Comments Scraper?
|
⭐ ⭐ ⭐ ⭐ ⭐ Now pulling thousands of real fan comments takes one run instead of a week of manual copy-pasting. A 5-star rating takes 10 seconds and helps other social-culture researchers and dataset builders find it. Your feedback also tells us what to build next. |
| ★ Rate this Actor on Apify |
💡 Tips and advanced options
- Turn on
includeRepliesselectively. Songs with millions of comments can have deep reply threads. Leave it off for a quick overview pull, and turn it on only when you need full conversational context. - Use
sinceCommentIdfor monitoring runs. SetsortTypeto time, save the newestcommentIdfrom your dataset after each run, and pass it back in on the next run to only collect what changed. - Start with a small
maxCommentsPerSong. Test a run with a low cap first to confirm a song has the comment volume and tone you expect before scaling up. - Datacenter proxies are the default and work well. Only switch to residential if a very large run starts returning blocked or empty pages.
❓ FAQ
Does this Actor get blocked scraping NetEase Cloud Music?
No blocking was observed in testing: no CAPTCHA, no IP-reputation gate, and no browser fingerprint check on the comment feed. The Actor uses the standard datacenter proxy pool by default, which has proven reliable for this target.
Do I need a NetEase account or login to scrape comments?
No. Comment data is public and readable with zero cookies or authentication. The Actor never asks for or stores account credentials.
How fresh is the comment data?
Every run reads the live comment feed directly, so results reflect what is on the page at the moment the Actor runs, not a cached snapshot.
网易云音乐评论怎么爬取?(How do I scrape NetEase Cloud Music comments?)
Paste a song URL like https://music.163.com/song?id=186016 or its numeric ID into the Actor's input, run it, and download the resulting comment dataset as JSON, CSV, or Excel. No coding or login required.
🔗 Other actors
- Ximalaya Scraper 喜马拉雅: Podcasts & Comments ↗ - scrapes podcast episodes and listener comments from China's largest audio platform.
- Kugou Music Scraper: 酷狗音乐 Catalog, Charts & Lyrics ↗ - pulls song catalog, chart rankings, and lyrics from another major Chinese music platform.
- Xigua Video Search Scraper: Keyword, Comments & Video Links ↗ - searches Xigua Video by keyword and returns video links and comments.
- 2GIS Reviews Scraper: Отзывы 2ГИС ↗ - collects business reviews and ratings from 2GIS, a similar comment-extraction pattern in a different market.
- TeamBlind Reviews Scraper: Tech Employer Ratings ↗ - extracts employer reviews and ratings from the anonymous professional network Blind.