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

    你可能感兴趣的文章
    Objective-C实现Burke 抖动算法(附完整源码)
    查看>>
    Objective-C实现Burrows-Wheeler 算法(附完整源码)
    查看>>
    Objective-C实现CaesarsCiphe凯撒密码算法(附完整源码)
    查看>>
    Objective-C实现cartesianProduct笛卡尔乘积算法(附完整源码)
    查看>>
    Objective-C实现check strong password检查密码强度算法(附完整源码)
    查看>>
    Objective-C实现chudnovsky algorithm楚德诺夫斯基算法(附完整源码)
    查看>>
    Objective-C实现circle sort圆形排序算法(附完整源码)
    查看>>
    Objective-C实现CircularQueue循环队列算法(附完整源码)
    查看>>
    Objective-C实现climbStairs爬楼梯问题算法(附完整源码)
    查看>>
    Objective-C实现cocktail shaker sort鸡尾酒排序算法(附完整源码)
    查看>>
    Objective-C实现cocktailShakerSort鸡尾酒排序算法(附完整源码)
    查看>>
    Objective-C实现CoinChange硬币兑换问题算法(附完整源码)
    查看>>
    Objective-C实现collatz sequence考拉兹序列算法(附完整源码)
    查看>>
    Objective-C实现Collatz 序列算法(附完整源码)
    查看>>
    Objective-C实现combinations排列组合算法(附完整源码)
    查看>>
    Objective-C实现combine With Repetitions结合重复算法(附完整源码)
    查看>>
    Objective-C实现combine Without Repetitions不重复地结合算法(附完整源码)
    查看>>
    Objective-C实现conjugate gradient共轭梯度算法(附完整源码)
    查看>>
    Objective-C实现connected components连通分量算法(附完整源码)
    查看>>
    Objective-C实现Connected Components连通分量算法(附完整源码)
    查看>>