博客
关于我
《隐秘的角落》弹幕分析,制作词云,看看观众们对该剧的评价如何
阅读量:632 次
发布时间:2019-03-14

本文共 2369 字,大约阅读时间需要 7 分钟。

《隐秘的角落》弹幕分析:观众对该剧的评价

近期热播的悬疑推理剧《隐秘的角落》凭借高质量的剧情和出色的演员表现,迅速引火。作为一名技术爱好者,我在追剧的同时尝试了从爱奇艺中该剧第一集的弹幕进行爬取,并通过制作词云来分析观众们对剧集的评价。以下是具体的操作步骤和分析结果。

一、爬取爱奇艺弹幕

爱奇艺的弹幕文件并非像其他视频网站那样直接暴露在前端,需要一定的技术手段才能爬取。以下是具体的操作步骤:

  • URL规律分析

    爱奇艺的弹幕文件地址具有特定的规律,格式如下:

    https://cmts.iqiyi.com/bullet/tvid倒数4位的前两位/tvid最后两位/tvid_300_x.z

    其中,x是根据视频总时长计算得出的,具体计算方式为:

    x = (视频总时长 / 300秒) 向上取整

    例如,《隐秘的角落》第一集总时长为77分钟,即77 / 5 = 15.4,向上取整后得到x=16。

  • 抓取代码

    使用Python编写爬取脚本,循环抓取每个时间点对应的弹幕文件:

    import zlibimport requests# 视频总时长为77分钟,x从1到16for x in range(1, 17):    url = f'https://cmts.iqiyi.com/bullet/92/00/9000000005439200_300_{x}.z'    bullet_file = requests.get(url).content    # 解码并解压弹幕内容    decompressed = zlib.decompress(bullet_file, 15 + 32).decode('utf-8')    # 保存为XML文件    with open(f'iqiyi_{x}.xml', 'a', encoding='utf-8') as f:        f.write(decompressed)        f.close()
  • 二、制作词云

    爬取到弹幕文件后,下一步是将内容提取并制作词云。以下是具体实现步骤:

  • 提取弹幕内容

    使用Python解析XML文件,提取每条弹幕的内容:

    from xml.dom import minidomimport os# 定义存储文件路径save_path = 'dan_mu.txt'for x in range(1, 17):    xml_path = f'iqiyi_{x}.xml'    DOMTree = minidom.parse(os.path.join('.', xml_path))    root = DOMTree.documentElement    entries = root.getElementsByTagName('entry')    for entry in entries:        content = entry.getElementsByTagName('content')[0]        if content:            content_data = content.childNodes[0].data            # 追加至文本文件            with open(save_path, 'a', encoding='utf-8') as f:                f.write(content_data + '\n')
  • 清洗数据

    直接使用弹幕内容可能存在重复或无意义的词语,需要进行清洗:

    from wordcloud import WordCloudimport jiebaimport matplotlib.pyplot as plt# 读取弹幕文件with open('dan_mu.txt', 'r', encoding='utf-8') as f:    myText = f.read()# 使用jieba进行分词words = jieba.cut(myText)# 去除无效词语cleaned_words = []for word in words:    if word and word not in ['这个', '不是', '这么', '怎么', '这是', '还是']:        cleaned_words.append(word)# 生成词云wordcloud = WordCloud(    background_color='white',    font_path='simsun.ttf',    width=800,    height=400).generate(' '.join(cleaned_words))# 显示词云plt.imshow(wordcloud)plt.axis('off')plt.show()# 保存词云图片wordcloud.to_file('wordCloud.png')
  • 三、分析结果

    通过制作的词云可以看出观众对本剧的评价主要集中在以下几个方面:

  • 演员表现突出

    "严良真的太完美了"、"孩子们的演技超乎出众"、"普普的演技我看了好几遍都没觉得累"等词语频繁出现,表明观众对演员的表现给予了高度评价。

  • 剧情引人入胜

    "悬疑感强到爆"、"剧情越来越扣人心"、"每一集都能抓住人心"等词语反映了观众对剧情的喜爱。

  • 细节打磨到位

    "细节真的很用心"、"每一个细节都很精致"等词语表明观众对剧集的细节处理非常满意。

  • 总体来看,《隐秘的角落》的弹幕评价整体为正面,观众对剧情、演员表现和制作水平给予了高度评价。这部剧无疑值得一看。

    如果你对技术文章感兴趣,不妨关注我的个人公众号,获取更多实用技能分享。

    转载地址:http://vzioz.baihongyu.com/

    你可能感兴趣的文章
    Python处理Excel数据
    查看>>
    Python基础:集合与文件操作
    查看>>
    Python基础:搭建开发环境(1)
    查看>>
    PYTHON基础:如何阅读N个整数,直到#39;
    查看>>
    Python基础:11变量作用域和闭包
    查看>>
    Python基础: with模式和__enter__ 和 __exit__
    查看>>
    Python基础(7)--函数
    查看>>
    Python基础部分-while循环,格式化输出
    查看>>
    Python基础语法:顺序语句结构
    查看>>
    Python基础语法:理解代码与写代码
    查看>>
    Python基础语法:条件和分支
    查看>>
    Python基础语法:基本数据类型(数字类型和布尔类型)
    查看>>
    Python基础语法:基本数据类型(列表)
    查看>>
    Python基础语法:内置函数
    查看>>
    Python基础语法:你不得不知的几种变量类型
    查看>>
    Python基础语法教程,零基础入门到精通,看完这一篇就够了
    查看>>
    Python基础语法与执行脚本的3种方式
    查看>>
    python基础语法
    查看>>
    python基础语法
    查看>>
    python系列【仅供参考】:python测试开发基础---multiprocessing.Pool
    查看>>