Python采集《雪中》弹幕做词云图可视化分析,看看它为何高开低走

前言

嗨喽!大家好,这里是魔王~

最近已经播完第一季的电视剧《雪中悍刀行》,从播放量就可以看出观众对于这部剧的期待,总播放量达到50亿,可让人遗憾的是,
豆瓣评分只有5.7,甚至都没有破6。

在这里插入图片描述
很多人会把这个剧和《庆余年》做对比,因为主创班底相同

400余万字的同名小说曾被捧为网文界里的“名著”,不少粉丝早就对跨界改编有所期待,剧版的主创班底、出品方与2019年的爆款剧《庆余年》相同则放大了这份期待。然而《雪中悍刀行》播出后,书粉的怒火蔓延到了各类讨论场合。

时常在某站混迹的我,经常刷到《雪中》影视片段和其他影视片段的对比视频,比如:

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
今天就来采集这部剧的一部分视频弹幕,看看观众都说了啥,为什么播放量高,口碑却低

知识点介绍

  1. requests模块的使用
  2. pandas保存表格数据
  3. pyecharts做词云图可视化

环境介绍

  • python 3.8
  • pycharm
  • requests >>> pip install requests
  • pyecharts >>> pip install pyecharts

一. 思路分析

找到弹幕所在地址 分析弹幕生成规律 timestamp: 初始值 15 后续实时加载 每隔30 就换一个数据

https://mfm.video.qq.com/danmuotype=json&target_id=7626435152%26vid%3Dp0041oidttf&session_key=0%2C174%2C1642248894&timestamp=195

二. 代码实现

  1. 发送网络请求
  2. 获取数据 弹幕内容
  3. 解析数据(筛选数据) 提取想要的一些内容 不想要的忽略掉
  4. 保存数据
  5. 词云图可视化

一、爬取弹幕

模块导入

import requests     # 发送网络请求
import pandas as pd # 保存数据

1.构建伪装

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):
  
  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是一个简单的中文词频统计和词云图的实现示例: 1. 中文词频统计 ```python import jieba import collections from collections import Counter # 读取文本文件 with open('text.txt', 'r', encoding='utf-8') as f: text = f.read() # 使用jieba对文本进行分词 seg_list = jieba.cut(text) # 去除停用词 stopwords = ['的', '了', '是', '我', '你', '他', '她', '我们', '你们', '他们'] words = [word for word in seg_list if word not in stopwords] # 统计词频并按照频率从高到低排序 word_counts = Counter(words) word_counts = sorted(word_counts.items(), key=lambda x: x[1], reverse=True) # 输出前10个词和频率 for word, count in word_counts[:10]: print(f'{word}: {count}') ``` 2. 利用词云图进行数据可视化 ```python import jieba import collections from collections import Counter import wordcloud import matplotlib.pyplot as plt # 读取文本文件 with open('text.txt', 'r', encoding='utf-8') as f: text = f.read() # 使用jieba对文本进行分词 seg_list = jieba.cut(text) # 去除停用词 stopwords = ['的', '了', '是', '我', '你', '他', '她', '我们', '你们', '他们'] words = [word for word in seg_list if word not in stopwords] # 统计词频并按照频率从高到低排序 word_counts = Counter(words) word_counts = sorted(word_counts.items(), key=lambda x: x[1], reverse=True) # 生成词云图 wc = wordcloud.WordCloud(font_path='msyh.ttc', background_color='white', max_words=2000, max_font_size=200, width=800, height=600) wc.generate_from_frequencies(dict(word_counts)) # 显示词云图 plt.imshow(wc) plt.axis('off') plt.show() ``` 其中,`text.txt`为待统计的文本文件,`msyh.ttc`为中文字体文件,需自行下载。执行以上代码后,会输出前10个词和频率,并在窗口中显示词云图

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值