用Python采集《雪中悍刀行》弹幕做成词云实例
作者:松鼠爱吃饼干 时间:2021-05-04 15:24:28
前言
最近已经播完第一季的电视剧《雪中悍刀行》,从播放量就可以看出观众对于这部剧的期待,总播放量达到50亿,可让人遗憾的是,豆瓣评分只有5.7,甚至都没有破6。
很多人会把这个剧和《庆余年》做对比,因为主创班底相同
400余万字的同名小说曾被捧为网文界里的“名著”,不少粉丝早就对跨界改编有所期待,剧版的主创班底、出品方与2019年的爆款剧《庆余年》相同则放大了这份期待。然而《雪中悍刀行》播出后,书粉的怒火蔓延到了各类讨论场合。
今天就来采集这部剧的一部分视频弹幕,看看观众都说了啥,为什么播放量高,口碑却低
知识点介绍
requests模块的使用
pandas保存表格数据
pyecharts做词云图可视化
环境介绍
python 3.8
pycharm
requests >>> pip install requests
pyecharts >>> pip install pyecharts
代码实现
1. 导入模块
import re
import requests # 发送网络请求
import pandas as pd # 保存数据
2. 发送网络请求
headers = {
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36'
}
# 构建一个列表储存数据
data_list = []
for page in range(15, 1500, 30):
url = f'https://mfm.video.qq.com/danmu?otype=json&target_id=7626435152%26vid%3Dp0041oidttf&session_key=0%2C174%2C1642248894×tamp={page}'
esponse = requests.get(url=url, headers=headers)
3. 获取数据 弹幕内容
json_data = response.json()
<Response [200]>: 告诉我们响应成功
4. 解析数据(筛选数据) 提取想要的一些内容 不想要的忽略掉
comments = json_data['comments']
print(comments)
for comment in comments:
data_dict = {}
data_dict['commentid'] = comment['commentid']
content = comment['content']
content = re.sub(r'[\x0e\xa0]', '', content)
data_dict['content'] = content
data_dict['opername'] = comment['opername']
print(data_dict)
data_list.append(data_dict)
5. 保存数据
df = pd.DataFrame(data_list)
# 乱码, 指定编码 为 utf-8 或者是 gbk 或者 utf-8-sig
df.to_csv('data.csv', encoding='utf-8-sig')
6. 词云图可视化
import jieba
from pyecharts.charts import WordCloud
import pandas as pd
from pyecharts import options as opts
wordlist = []
data = pd.read_csv('data.csv')['content']
data
a = [list(z) for z in zip(word, count)]
c = (
WordCloud()
.add('', a, word_size_range=[10, 50], shape='circle')
.set_global_opts(title_opts=opts.TitleOpts(title="词云图"))
)
c.render_notebook()
来源:https://blog.csdn.net/m0_48405781/article/details/122587761
标签:Python,弹幕,词云
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
asp+jsp+JavaScript动态实现添加数据行
2023-07-03 05:37:15
![](https://img.aspxhome.com/file/2023/9/114069_0s.png)
如何使用Python+ChatGPT批量生成论文
2023-10-01 20:30:17
![](https://img.aspxhome.com/file/2023/9/63199_0s.png)
Oracle故障处理Rman-06207&Rman-06214的方法
2023-07-08 01:26:29
JAVA正则表达式校验qq号码的方法
2023-08-09 02:54:25
![](https://img.aspxhome.com/file/2023/6/64936_0s.png)
正则表达式语法速查
2007-11-11 10:43:00
Python使用TextRank算法提取关键词
2021-05-31 07:29:44
![](https://img.aspxhome.com/file/2023/9/67839_0s.png)
mcrypt启用 加密以及解密过程详细解析
2023-07-15 19:41:55
利用location.hash实现跨域iframe自适应高宽
2009-08-02 20:31:00
Tensorflow简单验证码识别应用
2023-08-10 14:13:14
![](https://img.aspxhome.com/file/2023/6/64646_0s.jpg)
在MySQL中使用XML数据—数据格式化
2009-12-29 10:26:00
Mootools 1.2教程(13)——正则表达式
2008-12-07 20:25:00
将设计执行到底—记Qzone项目组视觉设计标注的前前后后
2009-04-19 13:22:00
![](https://img.aspxhome.com/file/UploadPic/20094/19/892_banner-85s.jpg)
浅谈用Python实现一个大数据搜索引擎
2022-05-11 19:15:52
![](https://img.aspxhome.com/file/2023/6/67326_0s.png)
可以实现在同一页面里的用多按钮进行提交吗?
2009-11-01 18:04:00
Python 常用 PEP8 编码规范详解
2022-09-03 06:21:12
浅析python 定时拆分备份 nginx 日志的方法
2023-08-04 06:03:37
用XML创建可排序、分页的数据显示页面
2008-04-22 18:25:00
Python 函数返回值的示例代码
2021-10-12 19:30:23
vuejs实现下拉框菜单选择
2023-09-23 08:49:54
![](https://img.aspxhome.com/file/2023/9/56299_0s.jpg)
教你如何升级SQL Server数据库系统
2009-01-19 14:42:00