网易云音乐评论生成Wordcloud(词云)
网易云音乐评论生成Wordcloud(词云)
1 前言
1.1 目的
本篇主要介绍网易云音乐爬取歌曲知足
的评论生成词云,可以结合新浪微博生成词云学习。
1.2 工具
- Wordcloud 词云(
pip install wordcloud
安装即可) - jieba 分词(
pip install jieba
安装即可) - 第三方网易云API(需配合node.js食用):https://github.com/Binaryify/NeteaseCloudMusicApi
2 过程
2.1 思路分析
- 爬取评论内容,查看API接口为
/comment/music?id=385965
,id
为要爬取评论的歌曲id
,通过API/search?keywords=知足
可以得到添加offset
和limit
(默认为20),然后offset
可以通过offset = (page - 1) * 20
得到。
- 解析Json数据,抓取评论
- 引入Wordcloud模块,生成词云。
2.2 步骤
- 本人用Scrapy实现数据抓取,Spider下parse改写如下:
def parse(self, response):body = json.loads(response.text)comments = body['comments']for comment in comments:item = NeteasecommentsItem()item['content'] = comment['content']yield itemself.page += 1if self.page >= 51:raise IOErrornext_url = 'http://localhost:3000/comment/music?id=%d&offset=%d' % (self.id, (self.page - 1) * 20)yield scrapy.Request(next_url)
其中:
if self.page >= 51:raise IOError
设定抓50页退出。
- pipeline中处理text内容,将内容输出到文本中。
class NeteasecommentsPipeline(object):def process_item(self, item, spider):with open('result.txt', 'a+', encoding='utf-8') as f:f.write(item['content'] + '\n')return item
- 生成词云
from wordcloud import WordCloud
import jieba
import matplotlib.pyplot as pltwith open('result.txt', 'r', encoding='utf-8') as f:f_text = f.read()res = jieba.cut(f_text)res_text = ' '.join(res)background_img = plt.imread('bg.jpg')wc = WordCloud(font_path='SourceHanSans-Normal.ttf', mask=background_img).generate(res_text)plt.imshow(wc)plt.axis('off')plt.show()
其中,mask
参数用来修改背景图片,否则是一个矩形,font_path
用于引入自定义字体,默认字体不显示中文,matplotlib.pyplot
用于显示生成的图片。
放个最终效果图吧。
3 总结
最后说明一下:
* 自定义字体必须支持中文显示,不然还是会显示一个个口字;
* 背景图片最好选用分辨率高一点的,不然显示效果很差;
* 其它细节请看新浪微博生成词云;
* Node.js版网易云音乐API:https://binaryify.github.io/NeteaseCloudMusicApi/#/?id=neteasecloudmusicapi
最最后再放个我用的背景图片吧:
以上。
网易云音乐评论生成Wordcloud(词云)相关推荐
- 爬虫之js加密破解抓取网易云音乐评论生成词云
js破解历程 前言 技能点 界面概况 静态网页 动态网页 页面解析 step1: 找参数 step2:分析js函数 step3:分析参数 step4: 校验 step5:转为python代码 编写爬虫 ...
- Python爬虫之js加密破解,抓取网易云音乐评论生成词云
js破解历程 前言 技能点 界面概况 静态网页动态网页 页面解析 step1: 找参数step2:分析js函数step3:分析参数step4: 校验step5:转为python代码 编写爬虫 很多人学 ...
- Python爬取网易云歌曲评论,做词云分析
前言 emmmm 没什么说的,想说的都在代码里 环境使用 Python 3.8 解释器 3.10 Pycharm 2021.2 专业版 selenium 3.141.0 本次要用到selenium模块 ...
- 网易云音乐评论 可视化分析
之前已经用python获取了网易云音乐的评论数据,下一步的工作就是数据分析了.一般数据分析无非是采用(统计)数字.图或者表的形式来展现数据之中隐含的信息.其中图和表显然是最直观的了.所以这里我使用可视 ...
- python爬取网易云音乐评论并进行可视化分析
2019独角兽企业重金招聘Python工程师标准>>> 前言 今天为大家一个爬取网易云音乐评论的Python案例,并用Python的第三方库来进行可视化分析,生成图表样式,可以清晰地 ...
- 44 万条数据揭秘:如何成为网易云音乐评论区的网红段子手?
作者 | 朱小五 责编 | 伍杏玲 有个段子讲"十年文案老司机,不如网易评论区,网易文豪遍地走,评论全部单身狗",网易云音乐的评论区也一直都是各类文案大神的聚集地. 那么我们普通用 ...
- python爬虫网易云音乐评论最多的歌_Python爬虫44万条数据揭秘:如何成为网易云音乐评论区的网红段子手?...
获取数据 其实逻辑并不复杂: 1.爬取歌单列表里的所有歌单url. 2.进入每篇歌单爬取所有歌曲url,去重. 3.进入每首歌曲首页爬取热评,汇总. 歌单列表是这样的: 翻页并观察它的url变化,注意 ...
- 爬取网易云音乐评论《安河桥》,进行分析
这是一首安河桥北,宇西唱的,个人感觉她和宋冬野唱的都很好,十分喜欢. 其中的评论也是十分有趣: 摘取几个看看: 如果直接对:https://music.163.com/#/song?id=416892 ...
- python的歌曲评论数据分析_用Python分析44万条数据,揭秘如何成为网易云音乐评论区的网红段子手...
有个段子讲"十年文案老司机,不如网易评论区,网易文豪遍地走,评论全部单身狗",网易云音乐的评论区也一直都是各类文案大神的聚集地. 那么我们普通用户到底如何成为网易云音乐评论里的热评 ...
最新文章
- webuploader上传文件,后台Java接收
- 鸿蒙tv系统安装,运行第一个鸿蒙tv应用
- MySQL之——The slave I/O thread stops because master and slave have equal...
- 某微型计算机指令格式如图,组成原理考试试卷
- Python的10个神奇的技巧
- 二叉搜索树的中序遍历为 递增序列_Go 刷 Leetcode 系列:恢复二叉搜索树
- 联想Y470为什么安装不上CentOS7 x86_64的系统?
- 房地产大亨PropTiger将VR/AR初创公司3DPhy收入麾下
- 全民 Transformer (二): Transformer在深度学习和NLP中如何发挥作用
- 初窥QuickTest脚本录制
- php使用redis实例,php中使用redis队列操作实例代码
- 小程序包大小超过限制
- 取消360导航作为浏览器访问首页
- 时域特征提取_EEG信号特征提取算法
- 我为什么选择使用Go语言?
- 借助MPU6050上手卡尔曼滤波
- 2015ccpc——G - Ancient Go
- c++ C2001 常量中有换行符
- 猿创征文|『编程与创作』10款颜值颇高的宝藏工具
- 图片纯前端JS压缩的实现