一、抓数据

要想做成词云图表,首先得有数据才行。于是需要一点点的爬虫技巧。

基本思路为:抓包分析、加密信息处理、抓取热门评论信息

1.抓包分析

我们首先用浏览器打开网易云音乐的网页版,进入陈奕迅《我们》歌曲页面,可以看到下面有评论。接着F12进入开发者控制台(审查元素)。

接下来就要做的是,找到歌曲评论对应的url,并分析验证其数据跟网页现实的数据是否吻合,步骤如下图:

查看hreaders的信息,发现浏览器使用的是POST的方式进行的请求

具体字段如上图,会发现表单中需要填两个数据,名称为params和encSecKey。后面紧跟的是一大串字符,换几首歌会发现,每首歌的params和encSecKey都是不一样的,因此,这两个数据可能经过一个特定的算法进行加密过的

2.加密信息处理

然后经过我的测试,直接把浏览器上这俩数据拿过来就可以。但是要想真正的解决这个加密处理,还需要有点加解密的只是存储。

我们在这里就只需要用我们这种偷懒的办法就可以完成需求了。这里我就使用这么个临时的方法好了,而且对于不同的歌曲是可以重用的,待会我们可以验证一下。

3.抓取热门评论信息

代码块如下:

import requests

import json

url = 'http://music.163.com/weapi/v1/resource/comments/R_SO_4_551816010?csrf_token=568cec564ccadb5f1b29311ece2288f1'

headers = {

'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36',

'Referer':'http://music.163.com/song?id=551816010',

'Origin':'http://music.163.com',

'Host':'music.163.com'

}

#加密数据,直接拿过来用

user_data = {

'params': 'vRlMDmFsdQgApSPW3Fuh93jGTi/ZN2hZ2MhdqMB503TZaIWYWujKWM4hAJnKoPdV7vMXi5GZX6iOa1aljfQwxnKsNT+5/uJKuxosmdhdBQxvX/uwXSOVdT+0RFcnSPtv',

'encSecKey': '46fddcef9ca665289ff5a8888aa2d3b0490e94ccffe48332eca2d2a775ee932624afea7e95f321d8565fd9101a8fbc5a9cadbe07daa61a27d18e4eb214ff83ad301255722b154f3c1dd1364570c60e3f003e15515de7c6ede0ca6ca255e8e39788c2f72877f64bc68d29fac51d33103c181cad6b0a297fe13cd55aa67333e3e5'

}

response = requests.post(url,headers=headers,data=user_data)

data = json.loads(response.text)

hotcomments = []

for hotcommment in data['hotComments']:

item = {

'nickname':hotcommment['user']['nickname'],

'content':hotcommment['content'],

'likedCount':hotcommment['likedCount']

}

hotcomments.append(item)

#获取评论用户名,内容,以及对应的获赞数

content_list = [content['content'] for content in hotcomments]

nickname = [content['nickname'] for content in hotcomments]

liked_count = [content['likedCount'] for content in hotcomments]

二、数据可视化

在获得相关评论数据后,我们将其做成图表与词云图,将让人看起来更直观。

接下来需要在自己电脑上安装需要相关的安装包: pyecharts(图表包)、matplotlib(绘图功能包)、 WordCloud(词云包)

其中,pyecharts 是一个用于生成 Echarts 图表的类库。 Echarts 是百度开源的一个数据可视化 JS 库,主要用于数据可视化,同时pyecharts 兼容 Python2 和 Python3。安装非常简单,只需:

pip install pyecharts

接下来就是代码的实现:

利用之前获得评论用户名和对应的点赞数,将其制作成图表图:

from pyecharts import Bar

bar = Bar("热评中点赞数示例图")

bar.add( "点赞数",nickname, liked_count, is_stack=True,mark_line=["min", "max"],mark_point=["average"])

bar.render()

由此可以看出,获得最高赞数(95056)评论是:

@鱼大叔Uncle:后来的我,离开了他,永远的离开了他,十年的感情不过寥寥几句话。后来的我,嫁给了一个很普通的人,没有他的浪漫,却有不一样的温暖。

大多数赞数为20000-30000之间,最低都达到7000+,(基本与网页里评论中数据吻合)。

最后,我们将所有的热门评论内容,制作成词云图展示出来,代码块如下:

from wordcloud import WordCloud

import matplotlib.pyplot as plt

content_text = " ".join(content_list)

wordcloud = WordCloud(font_path=r"C:\simhei.ttf",max_words=200).generate(content_text)

plt.figure()

plt.imshow(wordcloud,interpolation='bilinear')

plt.axis('off')

plt.show()

结果图:

.

python的歌曲评论数据分析_用Python爬取陈奕迅歌曲10万条评论的新发现相关推荐

  1. 使用Python抓取猫眼近10万条评论并分析

    <一出好戏>讲述人性,使用Python抓取猫眼近10万条评论并分析,一起揭秘"这出好戏"到底如何? 黄渤首次导演的电影<一出好戏>自8月10日在全国上映,至 ...

  2. 《一出好戏》讲述人性,使用Python抓取猫眼近10万条评论并分析,一起揭秘“这出好戏”到底如何?

    视频课程链接:https://edu.csdn.net/course/detail/9348 黄渤首次导演的电影<一出好戏>自8月10日在全国上映,至今已有10天,其主演阵容强大,相信许多 ...

  3. 《一出好戏》讲述人性,使用Python抓取猫眼近10万条评论并分析,一起揭秘“这出好戏”到底如何?...

    黄渤首次导演的电影<一出好戏>自8月10日在全国上映,至今已有10天,其主演阵容强大,相信许多观众也都是冲着明星们去的. 目前<一出好戏>在猫眼上已经获得近60万个评价,评分为 ...

  4. Python 爬取了猫眼 47858 万条评论,告诉你《飞驰人生》值不值得看?!

    坦白说,看前几部电影的时候,我一直在想"到底放不放阿信的歌啊?什么时候放啊?",那看<飞驰人生>的时候,直到影片结束片尾曲<一半人生>响起的时候,我才记起来 ...

  5. Python爬取了猫眼47858万条评论,告诉你《飞驰人生》值不值得看?!

    来源 | Yura不说数据说 坦白说,看前几部电影的时候,我一直在想"到底放不放阿信的歌啊?什么时候放啊?",那看<飞驰人生>的时候,直到影片结束片尾曲<一半人生 ...

  6. python的歌曲评论数据分析_用Python分析44万条数据,揭秘如何成为网易云音乐评论区的网红段子手...

    有个段子讲"十年文案老司机,不如网易评论区,网易文豪遍地走,评论全部单身狗",网易云音乐的评论区也一直都是各类文案大神的聚集地. 那么我们普通用户到底如何成为网易云音乐评论里的热评 ...

  7. 用Python爬取陈奕迅新歌《我们》10万条评论的新发现

    编程狗编程大牛技术分享平台 最近就有一部"怀旧"题材的电影,未播先火,那就是刘若英的处女作--<后来的我们>.青春,爱情,梦想,一直是"怀旧"题材的 ...

  8. Python 爬取了 121.3 万条大众点评,告诉你哪里的小龙虾才是一绝!

    俗语有云,酷暑三伏钓早晚.那么啤酒配上小龙虾,岂不甚妙哉?本文是一篇吃货指南,给广大的小龙虾爱好者扒一扒,哪里的小龙虾才是一绝. 题图来源:金渡广告摄影 获得数据 本次数据我们爬取了大众点评中所有打上 ...

  9. 爬取了陈奕迅新歌《我们》10万条评论数据发现:原来,有些人只适合遇见

    点击上方"程序人生",选择"置顶公众号" 第一时间关注程序猿(媛)身边的故事 最近就有一部"怀旧"题材的电影,未播先火,那就是刘若英的处女作 ...

最新文章

  1. mapx实现热点效果
  2. java中的神奇this
  3. qt 快速按行读取文件_这是知识点之Linux下分割文件并保留文件头
  4. 矩形并的面积(51Nod-2488)
  5. CSS基础学习-13.CSS 浮动
  6. .NET实现对服务器端目录下PDF文件的预览
  7. WebService接口实际场景应用(一)
  8. 关于XSS的一些介绍
  9. 十二月份找工作好找吗_人民大学在职研究生将来好找工作吗?
  10. 传智播客 C/C++学习笔记 二级指针作为输出参数以及空间的释放
  11. antdesign 所兼容的浏览器_牛人推荐的跨浏览器兼容性总结
  12. TrustedInstaller权限的问题
  13. 最适合菜鸟的汉诺塔讲解
  14. java100内奇数和偶数的和
  15. Enter的使用计算机,Win7系统下键盘Enter回车键五大功能介绍
  16. Laravel5.5 项目开发文档,精简版,不适合新手使用。
  17. 科研级试剂材料磷脂聚乙二醇马来酰亚胺 DSPE-PEG-MAL----为华生物
  18. 如何用大数据做行为预测的?
  19. 分享一个小玩意 真菌UNITE物种分类数据库
  20. 论文编辑与投稿——引用文献(References)中作者名字中“姓”、“名”应该如何组织

热门文章

  1. R语言数据可视化教程(ggplot2)_绘制散点图
  2. 不用标点符号实现加减乘除运算
  3. 如何重启MySQL服务
  4. visualassist飞鸟的专栏
  5. 【MySQL】MySQL的数据类型
  6. html5 游戏制作教程,【整理】一步一步学做HTML5游戏教程
  7. pytorch自动下载的权重保存位置
  8. python四位水仙花数代码_Python一句代码实现找出所有水仙花数的方法
  9. Android 优惠券背景
  10. CentOS中安装与配置Tomcat-7的方法