用Python采集《雪中悍刀行》弹幕做成词云实例
作者:松鼠爱吃饼干 发布时间:2021-05-04 15:24:28
标签:Python,弹幕,词云
前言
最近已经播完第一季的电视剧《雪中悍刀行》,从播放量就可以看出观众对于这部剧的期待,总播放量达到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
0
投稿
猜你喜欢
- 视频观看视频函数的参数定义函数时,我们把参数的名字和位置确定下来,函数的接口定义就完成了。参数在函数名后的括号内指定。您可以根据需要添加任意
- 和之前C++执行Linux Bash命令的方法 一样,Python依然支持system调用和popen()函数来执行linux bash命令
- SQL中的单记录函数1.ASCII返回与指定的字符对应的十进制数;SQL> select ascii('A') A,a
- php输出全部gb2312编码内的汉字,$area表示分区,$pos表示分区内所在位置。<?php$fp = fopen('t
- 最近要搭建一个阿里云的LMAP环境,选了CentOS7来做搭建。1.ApacheCentos7默认已经安装httpd服务,只是没有启动。如果
- 最近在做一个魔术网的div+css切割,昨晚发现了长期以来一直无记录下来的问题!关于兼容IE跟FF的float属性。趁现在还清醒赶紧记下笔记
- 众所周知,程序在启动后,各个程序文件都会被加载到内存中,这样如果程序文本再次变化,对当前程序的运行没有影响,这对程序是一种保护。但是,对于像
- 前段时间在论坛上有人问到一个淘宝网上的hover伪类实现的效果如果兼容ie6。其实,问题很简单,就是hover伪类在IE6中得不到很好的支持
- 背景今天突然想到之前被要求做同性质银行的数据分析。妈耶!十几个银行,每个银行近5年的财务数据,而且财务报表一般都是 pdf 的,我们将 pd
- 这篇文章主要介绍了Python实现word2Vec model过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学
- 其实所有的死锁最深层的原因就是一个:资源竞争。表现一:一个用户A 访问表A(锁住了表A),然后又访问表B
- 代码: <?php $page=$_GET['page']; include($page.'php')
- 阿里云提供了基于命名空间的 V2 版 SDK,但是文档不是很完整,使用门槛比较高,于是我封装了一个 Composer 包:https://g
- 1. 需求概述最近接到一份PDF资料需要打印,奈何页面是如图所示的A3格式的,奈何目前条件只支持打印A4。我想要把每页的一个大页面裁成两个小
- 一、何为php PHP,即“PHP: Hypertext Preprocesso
- 如何在本地机器上创建缓存?用法到是很简单,只需先创建Stream对象的实例,然后开始写入数据即可: Dim str&n
- 设计,用户说好,才是真的好!14期的友商联线,同事认为风格不美观,需要重新设计。这次,我们引入了用户调研,调研数据可以帮助我们快速决策!ED
- 本文实例讲述了PHP登录验证功能。分享给大家供大家参考,具体如下:登录界面具体实现方法如下:login.html<!DOCTYPE h
- 本文实例讲述了Python使用reportlab将目录下所有的文本文件打印成pdf的方法。分享给大家供大家参考。具体实现方法如下:# -*-
- 比如有两个模块,一个aa.py,一个bb.py 代码如下:aa.py:#encoding:utf-8import bba=1bb.py:#e