昨天看球时,球迷都说了啥——弹幕抓取与分析

浏览: 1757

推荐去我的博客阅读:昨天看球时,球迷都说了啥——弹幕抓取与分析

Clipboard Image.png

数据来源:龙珠直播中国之队官方直播间直播间-龙珠直播,游戏直播平台

本次弹幕记录(开始时间: 2017-03-23-19:43:34,结束21:29:33),共记录20788条数据。

使用OBS弹幕助手记录OBS弹幕助手 - OBS插件 - 小葫芦

Clipboard Image.png

1、分析

Clipboard Image.png

文件中含有时间记录,观众ID和送礼记录,其次是弹幕内容,所以决定对前两列内容不分析。

首先需要对文本分词,这里采用jieba分词 fxsjy/jieba

去除空格,使用strip()函数, 去掉换行符"\n"

line = line.strip('\n')

把分析结果写入新的文档'text.txt',Python join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串

text = ''
with open('danmu.txt',encoding='utf-8') as fin:
for line in fin.readlines():
line = line.strip('\n')
text += '/'.join(jieba.cut(line))
text += ' '
fout = open('text.txt','wb')#以二进制写模式写入
pickle.dump(text,fout)
fout.close()

这样就完成了分词过程,结果如下:

Clipboard Image.png

2、绘制图云

# 直接从文件读取数据
fr = open('text.txt','rb')
text = pickle.load(fr)

使用word_cloud,具体用法amueller/word_cloud

backgroud_Image = plt.imread('girl.jpg')
wc = WordCloud( background_color = 'white', # 设置背景颜色
mask = backgroud_Image, # 设置背景图片
max_words = 2000, # 设置最大现实的字数
stopwords = STOPWORDS, # 设置停用词
font_path = 'C:/Users/Windows/fonts/msyh.ttf',# 设置字体格式,如不设置显示不了中文
max_font_size = 300, # 设置字体最大值
random_state = 50, # 设置有多少种随机生成状态,即有多少种配色方案
)

使用matplotlib绘图,Python plotting - Matplotlib 2.0.0 documentation

wc.generate(text)
image_colors = ImageColorGenerator(backgroud_Image)
#wc.recolor(color_func = image_colors)
plt.imshow(wc)
plt.axis('off')
plt.show()

OK,这样就完成了,附上结果

Clipboard Image.png

有没有你发过的弹幕呢?

可自形修改数据,得到更好看图片。

能力有限,分析很少,如果你想进行更深入分析,请找我要文件。

对英雄联盟感兴趣的小伙伴可以看看这篇,对游戏直播弹幕的分析。

利用Python对直播弹幕的分析

github:zhangslob/DanmuFenxi

(万水千山总是情,来波Star行不行)

推荐 3
本文由 崔斯特呀 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

1 个评论

热点

要回复文章请先登录注册