前两天

周杰伦发了新歌


说好不哭


顿时间就刷屏了



周杰伦

是一个时代的符号

是我们的青春



早些天

小帅b听周杰伦的歌

还湿润了眼眶了呢







那时候我们唱 k
周董的歌是必点的


他的电影
《不能说的秘密》
就刷了好几遍


这次的新歌
MV 很 nice 啊





特别是里面的女主
上网搜了一下她的照片






小帅b瞬间就爱了啊


刚看了下qq音乐的评论





2500+ 的评论
小帅b不禁好奇


这些评论
都在说写什么呢


要不然就把它们爬下来
搞个词云图看看吧


接下来就是
学习 python 的正确姿势


首先我们来分析一下这个网页


打开控制面板






我们点击下一页
发起请求






发现了一个 comment 的请求
点击进去






咦~
这不就是评论的数据嘛


再具体看下 json 数据
原来评论的数据是被
封装到 comment 对象下的
commentlist 数组了







再来看看是怎么请求的吧
点击 Headers






哇靠
请求链接这么长


看看请求参数






看来看去
主要就 pagenum 和 lasthostcommentid 在变


pagenum 一看就是页码
请求第一页的 pagenum 是 0
第二页是 1


lasthostcommentid 则是
上一页请求的最后一条评论id






用 Python 来模拟请求一下吧


前方高能


这么多请求参数
我可不想一个键值一个键值的
复制粘贴


复制一下 cURL







然后打开我之前说的


postman






点击 Import 按钮
接着选择
Past Raw Text


然后
把刚刚复制的 cURL 粘贴进去






点击 Import






点击 Send






可以看到
评论数据返回了


接下来骚操作了
点击 Code






此时会出现一个面板
选择
Python Requests






直接一键生成
Python请求代码






太太太太TM爽了


有了这么方便的请求代码
爬取数据到 txt 文件不是
so easy 么


简单撸下代码
把评论数据都爬下来



先直接把刚才生成的请求代码
复制过来






创建一个文件用来存放评论数据






来个 for 循环请求每一页的数据






在每一次请求的时候

还要拿到最后一条评论的 id

作为下次请求的参数







我们知道
评论数据被封装在 json 数组里面
所以可以循环获取一下
然后写到文件里面去


不过有些评论数据含有表情啥的
需要把它们顺便给替换掉







写完之后把文件给关了






跑一下吧






完事之后
 jay.txt 就有所有的评论了






有了数据之后
咱们就可以生成词云了


准备个字体文件






准备张背景颜色图片






打开






因为中文
结巴分词整起





接着就可以使用
 wordcloud 搞事情了






最后我们使用
pyplot 来 show 一下吧






运行一波
词云出来





可以看到

说好不哭假面骑士

出现的频率最高



假面骑士说得是 mv 里的男主

其中的“自己”、“努力”、“人生”

也是能量满满



小帅b

谨以此篇

致敬周杰伦

以及我们的青春



下回见

peace


扫一扫

学习 Python 没烦恼