前言

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

最近已经播完第一季的电视剧《雪中悍刀行》,从播放量就可以看出观众对于这部剧的期待,总播放量达到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):url = f'https://mfm.video.qq.com/danmu?otype=json&target_id=7626435152%26vid%3Dp0041oidttf&session_key=0%2C174%2C1642248894&timestamp={page}'

2. 发送网络请求

    response = requests.get(url=url, headers=headers)

3. 获取数据 弹幕内容 <Response [200]>: 告诉我们响应成功

    json_data = response.json()# print(json_data)

4. 解析数据(筛选数据) 提取想要的一些内容 不想要的忽略掉

    comments = json_data['comments']for comment in comments:data_dict = {}data_dict['commentid'] = comment['commentid']data_dict['content'] = comment['content']data_dict['opername'] = comment['opername']print(data_dict)data_list.append(data_dict)

5. 保存数据 wps 默认以gbk的方式打开的

df = pd.DataFrame(data_list)
# 乱码, 指定编码 为 utf-8 或者是 gbk 或者 utf-8-sig
df.to_csv('data.csv', encoding='utf-8-sig', index=False)

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#%%data_list = data.values.tolist()
data_str = ' '.join(data_list)
words = jieba.lcut(data_str)#%%for word in words:if len(word) > 1:wordlist.append({'word':word, 'count':1})
df = pd.DataFrame(wordlist)#%%dfword = df.groupby('word')['count'].sum()
dfword2 = dfword.sort_values(ascending=False)#%%dfword3 = pd.DataFrame(dfword2, columns=['count'])#%%dfword3['word'] = dfword3.index
dfword3#%%word = dfword3['word'].tolist()
count = dfword3['count'].tolist()#%%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()

词云图

视频教程

最近老是看到《雪中悍刀行》的视频推荐,于是来爬一爬它的弹幕,看看评价如何!

尾语

好了,我的这篇文章写到这里就结束啦!

有更多建议或问题可以评论区或私信我哦!一起加油努力叭(ง •_•)ง

喜欢就关注一下博主,或点赞收藏评论一下我的文章叭!!!

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

  1. python采集火热弹幕数据并做词云图可视化分析

    前言 嗨喽,大家好呀~这里是爱看美女的茜茜呐 又到了学Python时刻~ 这里写目录标题 前言 知识点介绍: 环境介绍: 代码实现: 代码 词云图 尾语

  2. 数据分析实例-获取某宝评论数据做词云图可视化

    获取数据 首先要通过抓包分析网站的数据接口是什么,再构造请求头,发送请求,解析数据,最后保存数据.本项目以某宝上的一个商品的评论数据为例进行获取. 爬虫主代码: import requests imp ...

  3. 商品评论获取与词云图可视化分析

    商品评论获取解析与可视化词云图制作 本篇文章主要介绍如何手写爬虫爬取电商平台评论数据,以及对爬取到的内容进行解析,导入mysql数据库并进行词频统计,可视化制作词云图. 涉及的技术点如下: 电商网站页 ...

  4. 运用java爬虫和python做词云图

    前言: 最近有点时间,就写个东西玩玩,就是分析电影评论做成词云图.这次没有采用python去爬取电影评论,而是采用了java中的多线程和线程池去爬取电影评论,但是用评论做词云图使用python写的.如 ...

  5. python实战1.1——根据1.0做词云图

    python实战1.1--根据1.0做词云图 最基础的词云图制作 import jieba import wordcloud import matplotlib.pyplot as pltm=open ...

  6. DayDayUp:寒门女孩考入北大→换角度看待表达《感谢贫穷》—关于吃苦与穷~~~Python之wordcloud词云图可视化

    DayDayUp:寒门女孩考入北大→换角度看待表达<感谢贫穷>-关于吃苦与穷~~~Python之wordcloud词云图可视化 目录 博主看法-关于吃苦与穷 文本内容 寒门女孩考入北大-& ...

  7. python中词云图怎样变成特殊图案_如何利用python画出一个多变的词云图?(1)...

    问题描述: 如何利用python画出一个多变的词云图? 解决方法:import numpy as np import matplotlib import matplotlib.pyplot as pl ...

  8. 使用echarts做词云图

    使用echarts做词云图,可以将词云图插入到HTML页面中,不像pyecharts只能生成一个独立的HTML页面,更不像wordcloud生成一张图片. 使用echarts可以实现词云(文字云) 网 ...

  9. 爬取豆瓣《小丑》短评做词云图

    一.抓取小丑的豆瓣短评 网址:https://movie.douban.com/subject/27119724/reviews?start=20 首先构造url,短评页面每页可以抓取20个评论,假如 ...

  10. 基于Python的特定形状透明背景词云图绘制

    基于Python的特定形状透明背景词云图绘制 1.需求分析 2.前期准备 2.1文本文件准备 2.2特定形状图片准备 3.代码解析与实现 3.1模块库的导入 3.2停用词表 3.3基于TF-IDF提取 ...

最新文章

  1. keras bi-lstm_LSTM用于文本生成的应用介绍-使用Keras和启用GPU的Kaggle Kernels
  2. android6.0源码分析之AMS服务源码分析
  3. oracle二阶段事物,分布式事务 两阶段提交 (2PC)
  4. 快捷配置Hibernate实现对数据库的配置(构建通道)
  5. 能代表个人水平的c语言程序,求全国高等学校计算机水平考试级C程序设计的免费..._报关水平_帮考网...
  6. mysql操作json优点和缺点_详解Mysql中的JSON系列操作函数
  7. 数据算法之希尔排序(shellSort)的Java实现
  8. 你们是不是很缺大数据工程师?
  9. ENVI实现归一化建筑物指数(NDBI)实验操作
  10. arm 饱和指令_ARM Neon 指令 解释
  11. pdca管理循环基本主张_“PDCA”循环中的物业质量管理
  12. 使用蒲公英工具箱获取设备 UDID
  13. 使用XML作为数据库
  14. 学习笔记:清华慕课——数据结构(1)
  15. 蒸汽式粉条机发展和销售乱象
  16. RK3399 Android 7.1开发准备
  17. 茅台nfc显示服务器临时维护,茅台酒使用手机NFC扫描瓶盖辨别真伪方法
  18. 哪个相机可以拍gif动图_魅族手机如何拍摄Gif图片 魅族手机拍摄Gif动图的方法图解...
  19. Win10注册表无法保存对权限所作的更改拒绝访问
  20. windows11 文档背景设置护眼色

热门文章

  1. 3乘3魔方第四步_三阶魔方第四步
  2. 【机器学习】可决系数R^2和MSE,MAE,SMSE
  3. 主机加固,数据防泄漏的解决方案
  4. 【BZOJ1502】【NOI2005】月下柠檬树
  5. python读二进制文件
  6. 无线网卡无信号无服务器,无线网卡不能连接网络是什么原因?
  7. translate maketrans 方法详解
  8. CSS元素宽度、继承父元素宽度、cale函数计算宽度总结
  9. 【图解CAN总线】-6-classic CAN 2.0总线网络“负载率”计算
  10. Yigo平台环境配置——详细步骤