返回

深入解析:使用Python获取QQ音乐歌词和精彩评论

见解分享

在上一篇文章中,我们学习了如何使用Python抓取QQ音乐的歌曲信息。现在,让我们更进一步,探索如何获取歌曲的歌词和前15个精彩评论。通过这些数据,我们可以进行更深入的音乐数据分析,了解歌曲的受欢迎程度和粉丝的反应。

一、获取歌曲歌词

要获取歌曲歌词,我们需要发送一个POST请求到QQ音乐的歌词接口。具体步骤如下:

  1. 打开浏览器,打开目标歌曲的播放页面,然后按F12打开调试工具。
  2. 在网络选项卡中,找到包含歌曲歌词数据的请求。
  3. 复制请求的URL和Headers。

例如,对于歌曲《起风了》的歌词,请求URL为:

https://c.y.qq.com/lyric/fcgi-bin/fcg_query_lyric.fcg

请求Headers为:

Accept: */*
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Connection: keep-alive
Content-Length: 107
Content-Type: application/x-www-form-urlencoded
Cookie: RK=co6iNTREz4; pgv_pvid=4347113533; pt2gguin=o0398019811; uin=o0398019811; skey=@pMO8lYyeg; luin=o0398019811; lskey=0001000082686986ab2a16e1b6fe5db4b2159d57f3ca454b9149958a039d958488e16a7e5c43780d397f045e6b22a5d26922f26889733bb8514f9a43356f9706132d861c1c7c2f346d80e23b78; qm_keyst=; ptcz=0db967bb12f97e232e0cc200d4bca46e53e76c9bb5af55be4e585f712a966b57; yqq_stat=0; yplayer_open=1; tvfe_boss_uuid=b608c10d0a697f1f; pgv_si=s1161192271; ts_last=y.qq.com/portal/player.html
Host: c.y.qq.com
Origin: https://y.qq.com
Referer: https://y.qq.com/n/yqq/song/003hphtZ0RR9XR.html
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.5112.102 Safari/537.36 Edg/104.0.1293.70
  1. 编写Python代码来发送POST请求并获取歌词。
import requests

url = 'https://c.y.qq.com/lyric/fcgi-bin/fcg_query_lyric.fcg'
headers = {
    'Accept': '*/*',
    'Accept-Encoding': 'gzip, deflate, br',
    'Accept-Language': 'zh-CN,zh;q=0.9',
    'Connection': 'keep-alive',
    'Content-Type': 'application/x-www-form-urlencoded',
    # 填写您的Cookie信息
    'Cookie': '...',
    'Host': 'c.y.qq.com',
    'Origin': 'https://y.qq.com',
    'Referer': 'https://y.qq.com/n/yqq/song/003hphtZ0RR9XR.html',
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.5112.102 Safari/537.36 Edg/104.0.1293.70',
}
data = {
    'songmid': '003hphtZ0RR9XR',
}
response = requests.post(url, headers=headers, data=data)
if response.status_code == 200:
    # 解析歌词数据
    lyrics = response.json()['lyric']
    print(lyrics)
else:
    print('获取歌词失败')

二、获取精彩评论

要获取精彩评论,我们需要发送一个GET请求到QQ音乐的评论接口。具体步骤如下:

  1. 打开浏览器,打开目标歌曲的评论页面,然后按F12打开调试工具。
  2. 在网络选项卡中,找到包含精彩评论数据的请求。
  3. 复制请求的URL和Headers。

例如,对于歌曲《起风了》的精彩评论,请求URL为:

https://c.y.qq.com/base/fcgi-bin/fcg_global_comment_show.fcg

请求Headers为:

Accept: */*
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Connection: keep-alive
Cookie: RK=co6iNTREz4; pgv_pvid=4347113533; pt2gguin=o0398019811; uin=o0398019811; skey=@pMO8lYyeg; luin=o0398019811; lskey=0001000082686986ab2a16e1b6fe5db4b2159d57f3ca454b9149958a039d958488e16a7e5c43780d397f045e6b22a5d26922f26889733bb8514f9a43356f9706132d861c1c7c2f346d80e23b78; qm_keyst=; ptcz=0db967bb12f97e232e0cc200d4bca46e53e76c9bb5af55be4e585f712a966b57; yqq_stat=0; yplayer_open=1; tvfe_boss_uuid=b608c10d0a697f1f; pgv_si=s1161192271; ts_last=y.qq.com/portal/player.html
Host: c.y.qq.com
Origin: https://y.qq.com
Referer: https://y.qq.com/n/yqq/song/003hphtZ0RR9XR.html
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.5112.102 Safari/537.36 Edg/104.0.1293.70
  1. 编写Python代码来发送GET请求并获取精彩评论。
import requests

url = 'https://c.y.qq.com/base/fcgi-bin/fcg_global_comment_show.fcg'
headers = {
    'Accept': '*/*',
    'Accept-Encoding': 'gzip, deflate, br',
    'Accept-Language': 'zh-CN,zh;q=0.9',
    'Connection': 'keep-alive',
    # 填写