博客
关于我
《隐秘的角落》弹幕分析,制作词云,看看观众们对该剧的评价如何
阅读量: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/

    你可能感兴趣的文章
    SQL--mysql索引
    查看>>
    OSChina 周四乱弹 ——程序员为啥要买苹果手机啊?
    查看>>
    OSChina 技术周刊第十期,每周技术抢先看!
    查看>>
    OSError: no library called “cairo-2“ was foundno library called “cairo“ was foundno library called
    查看>>
    Osgi环境配置
    查看>>
    OSG中找到特定节点的方法(转)
    查看>>
    OSG学习:几何体的操作(二)——交互事件、Delaunay三角网绘制
    查看>>
    OSG学习:几何对象的绘制(三)——几何元素的存储和几何体的绘制方法
    查看>>
    OSG学习:几何对象的绘制(二)——简易房屋
    查看>>
    OSG学习:几何对象的绘制(四)——几何体的更新回调:旋转的线
    查看>>
    OSG学习:场景图形管理(一)——视图与相机
    查看>>
    OSG学习:场景图形管理(三)——多视图相机渲染
    查看>>
    OSG学习:场景图形管理(二)——单窗口多相机渲染
    查看>>
    OSG学习:场景图形管理(四)——多视图多窗口渲染
    查看>>
    OSG学习:新建C++/CLI工程并读取模型(C++/CLI)——根据OSG官方示例代码初步理解其方法
    查看>>
    Sql 随机更新一条数据返回更新数据的ID编号
    查看>>
    OSG学习:空间变换节点和开关节点示例
    查看>>
    OSG学习:纹理映射(一)——多重纹理映射
    查看>>
    OSG学习:纹理映射(七)——聚光灯
    查看>>
    OSG学习:纹理映射(三)——立方图纹理映射
    查看>>