《黑神话:悟空》B站弹幕、知乎回答分析

简介: 最近行哥看到一部燃爆的游戏试玩短片火遍全网---《黑神话:悟空》,短短四天在B站便获得2100万+播放量。知乎也都在从各个角度评论这款游戏,所以行哥今天分别爬取上万条《黑神话:悟空》在B站的弹幕和知乎的回答,来看看这款游戏的评价到底怎么样

image.png

最近行哥看到一部燃爆的游戏试玩短片火遍全网---《黑神话:悟空》,短短四天在B站便获得2100万+播放量。知乎也都在从各个角度评论这款游戏,所以行哥今天分别爬取上万条《黑神话:悟空》在B站的弹幕和知乎的回答,来看看这款游戏的评价到底怎么样

   1.爬取B站弹幕

   2爬取知乎回答

   3.词云分析

   4.结论

   5.参考

1.爬取B站弹幕image.png

短短四天,该视频便有2100万+播放量和26万+弹幕,想爬取B站弹幕网上已经有了各种介绍文章,但大多都是利用api进行爬取,有些api也已经不再维护了。

所以行哥今天着重介绍下如何通过抓包--> requests来进行爬取B站弹幕,首先打开采集弹幕的视频,然后F12--> Networkimage.png

虽然打开弹幕列表只能找到类似弹幕但被加密的数据包,但是我们可以通过点击弹幕列表—>查看历史弹幕,并选择任意一天的历史弹幕,此时就能找到存储该日期弹幕的ajax数据包,所有的弹幕都藏在一个i标签中

利用请求查看弹幕的ResquestURL主要是oid和date两个参数组成的,这两个参数也很轻松能够在数据包中找到,那就可以进行构建URL

def get_url(oid,start,end):
    '''
    获取指定日期的弹幕
    oid:视频oid
    start,end:起止日期
    '''
    url_list = []
    date_list = [i for i in pd.date_range(start,end).strftime('%Y-%m-%d')]
    for date in date_list:
        url = f"https://api.bilibili.com/x/v2/dm/history?type=1&oid={oid}&date={date}"
        url_list.append(url)
    return url_list

接下来要做的就是使用requests请求网站并使用bs4解析数据,最后将数据写入TXT即可。不过该方法限制每天只能获取1500条弹幕,所以本文爬取了20200820-20200824总共7500条弹幕,核心代码如下,需要全部源码可以在公众号[一行数据]后台回复[黑神话]即可获取

if __name__ == "__main__":
    #需要手动设置爬取弹幕的起止日期!
    #oid获取说明详见公众号:一行数据
    start = '20/8/2020'
    end = '24/8/2020'
    name = input("请输入视频名称")
    oid = input("请输入对应视频oid") # 226204073
    # print("========正在爬取弹幕=========")
    url_list = get_url(oid, start, end)
    get_danmu(url_list, name)
    print(f"{name}.txt已生成")

2爬取知乎回答image.png

之前行哥有分享过如何爬取知乎一个问题下所有回答的推文,以下核心代码是利用知乎api进行获取所有4433个回答,

def getAnswers(qid,title):
    # 全部源码请关注公众号:一行数据
    offset = 0
    num = 1
    f = open("知乎回答_%s.txt" % title, "a")
    while True:
        qid = qid
        print('Offset =', offset)
        # 知乎api请求
        data = getAnser(qid, offset)
        # print(data)
        if len(data['data']) == 0:
            break
        for line in data['data']:
            # print(line)
            dr = re.compile(r'<[^>]+>', re.S)
            dd = dr.sub('', line['content'])
            f.write(dd)
            print(dd)
        offset += 20

3.词云分析

利用之前行哥分享过的stylecloud工具包,两行代码便可以自动提取文字并生成漂亮的词云图,代码如下:

from stylecloud import gen_stylecloud
gen_stylecloud(file_path='B站弹幕_黑神话.txt',collocations=False,palette='tableau.GreenOrange_6',font_path=r'ziti.ttf',stopwords=False,icon_name='fas fa-thumbs-up',size=400,output_name='b_answer.png')

22.gif

B站 弹幕词云1

11.gif

知乎回答词云

4.结论

从上图词云可以看到B站弹幕更多的是看到某一处场景直接有感而发“卧槽、起立”,而知乎用户更加理性的引经据典从游戏性、画面、音效等方面进行评价。其中也不外乎有一部分人,在弹幕发表即时感受,然后去知乎进行深入点评

不过总体就是一句:国游崛起、出必买

当然,最近该游戏制作人在微博指出它仍然有很多不足之处,但是对于旁观者来说这可是给国游玩家一剂最猛的强心剂,被游戏耽误的电影公司也不再是暴雪一家,剩下只需要给「游戏科学」足够的时间

5.参考

早起Python | https://mp.weixin.qq.com/s/rQd2nwLktw9kccgQNpNmWw


相关文章
|
7月前
全民k歌 and B站 爬取
全民k歌 and B站 爬取
105 0
|
1月前
|
数据采集 存储 数据可视化
Python数据分析:揭秘"黑神话:悟空"Steam用户评论趋势
Python数据分析:揭秘"黑神话:悟空"Steam用户评论趋势
|
1月前
|
程序员 Go 项目管理
《黑神话:悟空》,我们程序员能从中学到什么
2024年8月,被誉为首部国产3A大作 的《黑神话:悟空》一段13分钟的实机演示视频,像是给全球玩家投下了一颗冲击弹,瞬间点燃了海内外游戏和西游文化爱好者的热情!作为程序员,我们能从这款游戏中学到什么呢?我们一起来探讨一下吧
|
3月前
|
机器学习/深度学习 人工智能 网络协议
探讨《黑神话:悟空》开发者需要掌握的关键技术储备
探讨《黑神话:悟空》开发者需要掌握的关键技术储备
90 6
|
4月前
|
自然语言处理 开发者
《黑神话:悟空》的剧情脚本与对话系统设计
【8月更文第26天】在《黑神话:悟空》这款游戏中,引人入胜的故事情节和丰富多样的对话系统是吸引玩家的关键因素之一。本文将详细介绍游戏剧情脚本的编写过程以及交互式对话系统的实现技术。
246 0
|
5月前
|
Web App开发 机器人
小白一学就会的 小红书全自动写文发文机器人-抓取爆款笔记(一)
小白一学就会的 小红书全自动写文发文机器人-抓取爆款笔记(一)
196 4
《黑神话:悟空》可能从虚幻4迁移至虚幻5
一段视频如果能在B站获得1000万+的播放量,那么必然是要载入B站史册,而这一点《黑神话:悟空》仅用一段演示视频就做到了。可以说《黑神话:悟空》是未来一段时间内最受国内玩家期待的游戏,近日该游戏美术总监杨奇在微博发布一张新的游戏截图,再次引发玩家猜想。
696 0
《黑神话:悟空》可能从虚幻4迁移至虚幻5
|
人工智能 算法 开发工具
阿里工程师开发弹幕新玩法,网友不淡定了……
如果你在追剧时喜欢看弹幕、发弹幕,那你一定知道有些剧里弹幕甚至比剧情还要精彩,比如上过热搜的出自《东宫》的那一句“谈恋爱吗?灭你全族的那种”。正是由于这些神一般的网友频频曝出精句,让某些剧集精彩程度翻了几倍,甚至有大量网友来追剧是被弹幕吸引来的。今天,阿里文娱高级开发工程师 神灭介绍一种弹幕新玩法,让弹幕的可玩性更高。
505 0
阿里工程师开发弹幕新玩法,网友不淡定了……
|
数据采集 小程序 API
手把手教你成为小程序流量头号玩家!
小程序开发中应该注意哪些搜索引擎优化手段
1230 0
如何引爆你的流量,吸粉神器今日头条引流方法
今日头条做自媒体的朋友都知道,头条是个流量大户,目前手机端流量差不多60%左右的流量都来自今日头条。
2712 0