网页抓取qq(教你使用Python抓取QQ音乐数据(第三弹))

优采云 发布时间: 2022-02-18 13:20

  网页抓取qq(教你使用Python抓取QQ音乐数据(第三弹))

  【一、项目目标】

  通过教你如何使用Python抓取QQ音乐数据(第一弹),我们实现了指定歌手单曲排名中指定页数歌曲的歌曲名、专辑名和播放链接。

  通过教大家如何使用Python抓取QQ音乐数据(第二弹),我们实现了获取音乐指定歌曲的歌词和指定歌曲首页的热评。

  本次基于项目(二),获取更多评论并生成词云图,教大家如何使用Python抓取QQ音乐数据(第三弹)。

  [二、需要的库]

  涉及的主要库有:requests、json、wordcloud、jieba

  如果要替换词云图片背景图片,还需要numpy库和PIL库(pipinstall枕头)

  【三、项目实现】

  1、首先我们来回顾一下,下面是项目代码(二)获取指定歌曲首页热评;

  def get_comment(i): url_3 = 'https://c.y.qq.com/base/fcgi-bin/fcg_global_comment_h5.fcg' headers = {'user-agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36', # 标记了请求从什么设备,什么浏览器上发出 } params = {'g_tk_new_20200303': '5381', 'g_tk': '5381', 'loginUin': '0', 'hostUin': '0', 'format': 'json', 'inCharset': 'utf8', 'outCharset': 'GB2312', 'notice': '0', 'platform': 'yqq.json', 'needNewCode': '0', 'cid': '205360772', 'reqtype': '2', 'biztype': '1', 'topid': id, 'cmd': '8', 'needmusiccrit': '0', 'pagenum': '0', 'pagesize': '25', 'lasthotcommentid': '', 'domain': 'qq.com', 'ct': '24', 'cv': '10101010'} res_music = requests.get(url_3,headers=headers,params=params) # 发起请求 js_2 = res_music.json() comments = js_2['hot_comment']['commentlist'] f2 = open(i+'评论.txt','a',encoding='utf-8') #存储到txt中 for i in comments: comment = i['rootcommentcontent'] + '——————————————————————————————————' f2.writelines(comment) # print(comment)f2.close()

  2、让我们考虑如何获得以下评论。下图是项目的parms参数(二)评论页面;

  

  图片

  3、网页无法选择评论的页码,如果想看后面的评论,请反复点击“点击加载更多”;我们可以点击查看对parms进行了哪些更改。

  

  图片

  4、这里有个小技巧,点击下图的清除按钮,清除网络接口,然后点击“点击加载更多”,就可以直接在第二页找到数据了。

  

  图片

  

  图片

  5、点击加载更多,会出现如下图。

  

  图片

  

  图片

  6、发现不仅pagenum变了,cmd和pagesize也变了。那个参数有什么问题,那我们看第三页;

  

  图片

  7、只有pagenum变了,我们试试把pagenum改成“0”,其他不变。第一页数据能正常显示吗?

  

  图片

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线