一、抓数据

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

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

1.抓包分析

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

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

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

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

2.加密信息处理

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

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

3.抓取热门评论信息

代码块如下:

import requestsimport json'''
更多Python学习资料以及源码教程资料,可以在群1136201545免费获取
'''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
'''
更多Python学习资料以及源码教程资料,可以在群1136201545免费获取
'''
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爬取陈奕迅歌曲10万条评论的新发现相关推荐

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

    一.抓数据 要想做成词云图表,首先得有数据才行.于是需要一点点的爬虫技巧. 基本思路为:抓包分析.加密信息处理.抓取热门评论信息 1.抓包分析 我们首先用浏览器打开网易云音乐的网页版,进入陈奕迅< ...

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

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

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

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

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

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

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

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

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

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

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

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

  8. Python爬取北京2.3万条租房信息,发现快租不起房子了!

    1.概述 北上广深作为打工人最多的超一线城市,大部分都是租房生活着.自如作为目前第三方租房平台,应该算是该行业的龙头.但是最近蛋壳的暴雷,我们不得不更加警觉.那么自如都有多少open状态的房源呢,这些 ...

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

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

最新文章

  1. Java Swing 之Timer配合JProgressBar的使用
  2. JEECG社区第六期架构培训班报名
  3. C语言实现链队列并测试
  4. 使用UDP遇到的问题小结
  5. java web 精仿微博_【Java】盘点 Github 上的高仿 app 项目,B站 微博 微信等等
  6. 远程访问ESXi网页控制台
  7. 2022-VS2015-ACE+TAO(7.0.5)+CIAO+OpenDDS 3.16 编译
  8. ZUI易入门Android之Git的使用(一)本地仓库
  9. Java实现线性回归模型算法
  10. macOS Big Sur发布了!适用于所有兼容的Mac机型!
  11. 网络对抗 Exp2.1 后门原理与实践 20154311 王卓然
  12. 自动生成统计报表功能
  13. vscode使用vetur格式化代码
  14. 如何搞定会计人员头疼的固定资产盘点?
  15. 计算机绘图R25,(学生)计算机绘图课程设计.doc
  16. Python入门学习笔记2
  17. SSL 为IP签发证书
  18. Thread类和Runnable接口的优劣
  19. 华为模拟器ensp VLAN与三层交换机实验
  20. div中加入内容会下沉

热门文章

  1. PHP判断是否是json字符串
  2. C语言小题,将字符串a复制为字符串b,然后输出字符串b。(地址法和指针变量法)(通过指针引用字符串)
  3. Android入门--实现选择并编辑图片设置成头像
  4. java实现多线程爬取表情包
  5. VirtualBox中Kali使用USB无线网卡
  6. 6.1 双循环与单循环求1到10的阶乘
  7. 将一组阿拉伯数字转换成中文大写数字
  8. 计算机视觉三大顶会(CVPR、ICCV、ECCV)网址
  9. 洛谷—P4799 [CEOI2015 Day2]世界冰球锦标赛题解
  10. 信号量机制实现进程互斥