python爬虫+词云图,爬取网易云音乐评论

爬取网易云音乐的评论

一开始是按照常规思路,分析网页ajax的传参情况。看到参数都是加密过的,在网上参考别人之前爬虫的思路。发现陆续有人用模拟传参,自己加密参数来实现,主要用python和js版本的。我尝试了几次,加密过程有问题没解决。后来突然看到有人提到了一个get请求获取评论的url,实测可以用,估计是传参之后,实际调用的内部接口。

http://music.163.com/api/v1/resource/comments/R_SO_4_167882?limit=20&offset=0

尝试之后发现可以直接调用,那么就简单多了

下面截取部分爬取的内容

解析json详情

根据url容易看出limit是每页的条数,offset是步长。随便试了几个参数,验证猜想正确。解析requests返回的json结构时,开始第一页的评论内容是hotComments,就都按照hotComments来解析。但是翻页后出错,原来后面其他页的是comments。估计是网易把历史的热门评论放到第一页,后面的是按时间倒叙的日常评论

词频统计和停止词

接下来对爬下来的txt文本进行词频统计,中文分词用的是jieba库,发现,和。等一类的无用词出现的频率也很高,于是在网上下载了一个停止词的txt文件,将一些没有的常见词过滤掉,不参与统计

扫描二维码关注公众号,回复: 5810864 查看本文章

词云图

刚开始的时候,图片里的中文是乱码,但是英文可以正常显示。后来发现是要加上font_path='Hiragino Sans GB.ttc',不然中文字体不能正常显示,英文字体则可以直接支持。

源码如下

猜你喜欢

转载自blog.csdn.net/qq_40925239/article/details/89069608