【导语】:今天我们来聊聊最近的社交游戏新宠--剧本杀,Python技术部分请看第三部分。
Show me data,用数据说话
今天我们聊一聊 剧本杀
如果问,线下聚会可以玩儿什么?狼人杀?密室逃脱?
nonono,说道现在社交游戏的新宠,就不得不提到ta——剧本杀。
剧本杀,最初源于欧美派对游戏“谋杀之谜”。玩家们需要根据自己拿到的剧本扮演角色,与其他玩家一起共同演绎故事,通过线索推断、交流,共同找到凶手并揭开故事全貌。
与狼人杀相似的是,二者都需要通过推理和表演找出凶手或者是掩饰自己。不同的是,狼人杀只有一个固定的剧情,即狼人在夜晚杀害村民,村民要在白天找出凶手。
而剧本杀则有不同的故事,无论从剧本、犯罪、作案到人物剧情都很多样化,加上线下剧本杀配备的服装、布景、道具,甚至玩上一局剧本杀,感觉像是经历了一场惊险刺激的沉浸式悬疑电影!
今天,我们就用数据跟大家盘一盘剧本杀。
01被高分综艺带火的剧本杀
很多小伙伴第一次听说剧本杀,可能都是因为《明星大侦探》(下文简称《明侦》)。2016年的3月,芒果TV首播明星推理真人秀《明侦》第一季。目前《明侦》共推出了五季,播出后在豆瓣的评分都还不错,分别是9.3/ 9.1 / 9.1 / 8.6/ 8.5.角色扮演、搜证、推理基本构成了许多人对剧本杀的第一印象。
随着《明侦》的大火,剧本杀也逐渐走进大众的视野。
说白了,剧本杀就是一个集逻辑推理和角色扮演于一体的社交游戏。人生如戏,剧本杀让玩家通过演绎角色切身体会到不一样的多彩人生,同时通过逻辑推理让玩家在游戏中获得解谜烧脑的乐趣。
02从线下门店到线上应用 剧本杀到底有多火?
近几年,剧本杀无论是线下实体店还是线上应用都得到了迅速的发展。
根据对美团点评的数据整理,2017年年初,剧本杀门店还仅有几十家,2018年年初增加到几百家,截至2019年12月,全国的剧本杀店已经由1月初的2400家飙升到12000家,一年之间开出一万家门店。
在今年2020年初,因受疫情影响,无法出门活动的人们迅速将目光聚集到了线上。大年初一,正处于疫情初期,就有用户反应《我是谜》APP游戏卡顿,同时微博热搜榜剧本杀APP《我是谜》也登榜,大量网友均反映系统崩溃。
随后《我是谜》创始人林世豪连忙发微博表示,对激增的访问人数感到惊讶,并表示马上叫程序员来修复。
说道剧本杀的核心,当然是剧本啦。故事写得好不好,情节和逻辑设置是否吸引人都是玩家尤其关注的点。那么哪些剧本最受追捧,剧本都在什么价钱呢?下面我们带大家分析下淘宝店铺的数据。
03用Python分析淘宝店铺剧本杀数据
作为桌游当中的一种,剧本杀在淘宝的销量数据如何呢?
我们用Python爬取了淘宝上的桌游剧本杀的关键词数据,下面一起具体看看:
桌游销量TOP10淘宝店铺
首先,我们看看那些桌游店铺最热门。
其中这家九卓家居专营店销量最高,其次位居二三的分别是游卡桌游昆高专卖店和艾雅玩具店。不过要注意的是,比起普通玩家,这些店铺买东西的主力肯定还是各大桌游店。
桌游店铺地区排名TOP10
这方面可以看到,桌游方面的淘宝店铺主要还是位于一线城市的。其中,上海、广东为第一第二位。浙江名列第三,北京位居第四。
桌游卡牌的价格区间
什么价位的桌游卡牌销量最高呢?
通过分析发现,显然50元以下的桌游销量最高,销售额占比高达42.72%。其次是50-100元的,销售额占比22.47%。然后比较贵的100-200的桌游销售额占比17.05%。
其中最主要的原因就是便宜,现在的50块钱可能连一顿下午茶钱都不够,二是因为50块钱的桌游大多数以纸牌为主,小巧便利,方便携带,出门消磨时光必备物件,很适合我们的生活方式,想要玩大型桌游,还是踏实去桌游店吧,规则看不懂还有法官。
剧本杀店铺销量数据
说完桌游店铺的数据,那么专门出售剧本杀相关产品的店铺数据如何呢?我们挑选了一家最火爆的剧本杀店铺,进行了分析。下面看到具体分析步骤:
我们使用Python获取了淘宝网上GoDan正版剧本杀商城商品和热评的数据进行了数据分析,地址如下:
https://shop387156301.taobao.com/category-1515015677.htm
实做过程分为:
数据获取
数据预处理
数据分析与可视化
1、数据获取
代码
# 导入所需包 import pandas as pd import time from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC # 登录淘宝 def login_taobao_acount(): # 登录URL login_url = 'https://login.taobao.com/member/login.jhtml' # 打开网页 browser.get(login_url) # 支付宝登录 log = wait.until( EC.element_to_be_clickable((By.CSS_SELECTOR, '#login-form > div.login-blocks.sns-login-links > a.alipay-login')) ) log.click() # 解析一页 def parse_one_page(): # 保存信息 title = [] price = [] sales_num = [] comment_num = [] # 获取内容 contents = browser.find_elements_by_xpath('//*[@id="J_ShopSearchResult"]//div[@class="item3line1"]//dl[contains(@class, "item")]') for content in contents: # 获取标题 title.append(content.find_element_by_xpath('.//dd[@class="detail"]/a').text) # 获取价格 price.append(content.find_element_by_xpath('.//dd[@class="detail"]//div[@class="cprice-area"]').text) # 获取销量 sales_num.append(content.find_element_by_xpath('.//div[@class="sale-area"]').text) # 获取评论 comment_num.append(content.find_element_by_xpath('.//h4').text) # 保存数据 df_one = pd.DataFrame({ 'title': title, 'price': price, 'sales_num': sales_num, 'comment_num': comment_num }) return df_one # 获取所有页 def get_all_page(): df_all = pd.DataFrame() # 初始URL start_url = 'https://shop387156301.taobao.com/category-1515015677.htm' # 获取URL browser.get(start_url) # 休眠 time.sleep(3) for i in range(7): # 共6页 # 打印进度 print('正在获取第{}页'.format(i+1)) # 运行函数 df_one = parse_one_page() # 循环追加 df_all = df_all.append(df_one, ignore_index=True) # 判断 if i == 6: break else: # 点击翻页 click_button = browser.find_element_by_css_selector('#J_ShopSearchResult > div > div.shop-hesper-bd.grid > div.pagination > a.J_SearchAsync.next') click_button.click() # 休眠3秒 time.sleep(3) return df_all if __name__ == '__main__': # 实例化 browser = webdriver.Chrome() wait = WebDriverWait(browser, 10) # 先登录 login_taobao_acount() df = get_all_page()
我们获取到的数据格式如下,共有7页146条数据:
df.head()
2、数据导入和数据预处理
主要包含以下部分工作:
title:提取一级标题和二级标题
price:提取数值
sales_num:提取数值
comment_num:提取数值
sales_amount:price * sales_num
# 导入包 import numpy as np import pandas as pd import re # 读入数据 df = pd.read_excel('../data/淘宝剧本商城数据.xlsx') # 去重 df = df.drop_duplicates() # 异常替换-预售 df['title'] = df.title.str.replace(r'【预售】', '') # 标题 df['title_1'] = df.title.str.extract(r'【(.*?)】') df['title_2'] = df.title.str.extract(r'【.*?】(.*)') df['title_2'] = df.title_2.str.replace(re.compile(r'【.*?】'), '') # strip df['title_1'] = df.title_1.str.strip() df['title_2'] = df.title_2.str.strip() # 价格 df['price'] = df.price.str.extract(r'(\d+)').astype('int') # 销量 df['sales_num'] = df.sales_num.str.extract(r'(\d+)').astype('int') # 评论数量 df['comment_num'] = df.comment_num.str.extract(r'(\d+)').astype('int') # 计算销售额 df['sales_amount'] = df['price'] * df['sales_num'] # 删除title df = df.drop(['title'], axis=1) df.head()
3、数据探索和可视化
from pyecharts.charts import Bar, Pie, Page from pyecharts import options as opts from pyecharts.globals import SymbolType, WarningType WarningType.ShowWarning = False
GoDan商城价格分布
bins = [0,200,500,1000,4900] bins_label = ['0-200', '200-500', '500-1000', '1000以上'] price_num = pd.cut(df.price, bins=bins, labels=bins_label) price_num = price_num.value_counts().sort_index() price_num
# 产生数据对 data_pair = [list(z) for z in zip(price_num.index.tolist(), price_num.values.tolist())] # 绘制饼图 # {a}(系列名称),{b}(数据项名称),{c}(数值), {d}(百分比) pie1 = Pie(init_opts=opts.InitOpts(width='1350px', height='750px')) pie1.add('', data_pair=data_pair, radius=['35%', '60%']) pie1.set_global_opts(title_opts=opts.TitleOpts(title='GoDan商城商品价格分布'), legend_opts=opts.LegendOpts(orient='vertical', pos_top='15%', pos_left='2%')) pie1.set_series_opts(label_opts=opts.LabelOpts(formatter="{b}:{d}%")) pie1.set_colors(['#2C69B0', '#EA6B73', '#AC613C', '#E9C39B']) pie1.render()
首先看到价格区间。对比桌游50元以下的价格商品最热门,GoDan的剧本杀就很不一样了,而是价格在200 - 500之间产品最多,占比77.87%。毕竟一个剧本大概需要过五万字的文学创作,这个价钱也对得起我们的内容创作者。
销量TOP10剧本
# 销量top10 sales_top10 = df.groupby('title_1')['sales_num'].sum().sort_values(ascending=False)[:10] sales_top10 = sales_top10.sort_values() sales_top10
title_1 朝别梨怨 61 孤城 62 爱幼妇产医院 64 古镜奇谈-月染长安 66 杀人回忆 76 愿我如星君如月 81 恶渊百物语 92 古木吟 95 窥镜 96 情辞白帝 134 Name: sales_num, dtype: int32
# 条形图 bar1 = Bar(init_opts=opts.InitOpts(width='1350px', height='750px')) bar1.add_xaxis(sales_top10.index.to_list()) bar1.add_yaxis('', sales_top10.values.tolist()) bar1.set_global_opts(title_opts=opts.TitleOpts(title='GoDan商城销量Top10剧本'), visualmap_opts=opts.VisualMapOpts(max_=134)) bar1.set_series_opts(label_opts=opts.LabelOpts(position='right')) bar1.reversal_axis() bar1.render()
最后就是万众瞩目的top10的剧本排名,前三名「情辞百帝」、「窥镜」、「古木吟」C君都还没有玩过,可能是孤落寡闻了,但是「杀人回忆」这个本很多家桌游店都推过,玩起来非常不错,有机会可以统统尝试下。
04玩了几百场剧本杀,如何精准发现当中套路
最近C君也沉迷于剧本杀,在玩了很多很多很多剧本后,发现一个惊人的事实,关于一个不用思考就可以找出凶手的逻辑,分享给你,保准你每次都是MVP。
当你玩了上百次剧本杀以后,你会发现当中的犯案动机真的是多种多样的,有时候还让人特别意想不到。所以想但从杀人动机、证据推理上推断出凶手那根本不可能,而且现在许多新出剧本写的越来越离谱,那该怎么玩儿呢?
所以古人有云,拨开表明看本质,当中的核心点就是“存在感”,而且是人越少越准。其实这和狼人杀中的珉人是一个道理,都是玄学。
但是剧本杀是游戏,是短时间信息密集游戏,所以每一个出场人物都有他纯在的道理。举个例子,去电影院看《唐人街探案》,人人都是福尔摩斯,但在生活中秒变脑残党,为什么?
其中很重要的就是圈层限定,凶手肯定是常出现的几个人之中,去掉主角、去掉酱油、可能只有一个人让你选了,剧本杀也一样,每个人都有必要的任务,你把每个人任务弄清楚,基本可以得出凶手是谁,这可比去盘逻辑简单多了。
有人会问,这不就失去了剧本杀的原本的乐趣了么?那就错了,其实玩剧本杀的人都知道,能投对凶手的剧本都是好剧本,投错了的剧本都是垃圾,最后结果还是很重要的。
结语
最后想说的是,剧本杀真的可以发散人的思维,因为这里有各种稀奇古怪的剧情,比电视剧可有意思多了,喜欢演戏,喜欢开脑洞的朋友们一定要去尝试下哦。
参考文献
剧本杀,能「杀」出一条财路吗?| 36氪新风向
https://mp.weixin.qq.com/s/evCJdX6JMc3szImf8hwwQw
《天天向上》告诉你,剧本杀有多火
https://mp.weixin.qq.com/s/e4Y6r5pc1qJ2t5pOpfF3Zg
剧本杀是什么?
https://www.douban.com/note/693384771/
线上井喷,社交新宠剧本杀真的是门好生意吗?
https://www.shangyexinzhi.com/article/517685.html
数据分析咨询请扫描二维码
数据分析师的工作内容涉及多个方面,主要包括数据的收集、整理、分析和可视化,以支持商业决策和问题解决。以下是数据分析师的一 ...
2024-11-21数据分析师必须掌握的技能可以从多个方面进行归纳和总结。以下是数据分析师需要具备的主要技能: 统计学基础:数据分析师需要 ...
2024-11-21数据分析入门的难易程度因人而异,总体来看,入门并不算特别困难,但需要一定的学习和实践积累。 入门难度:数据分析入门相对 ...
2024-11-21数据分析是一项通过收集、整理和解释数据来发现有用信息的过程,它在现代社会中具有广泛的应用和重要性。数据分析能够帮助人们更 ...
2024-11-21数据分析行业正在迅速发展,随着技术的不断进步和数据量的爆炸式增长,企业对数据分析人才的需求也与日俱增。本文将探讨数据分析 ...
2024-11-21数据分析的常用方法包括多种技术,每种方法都有其特定的应用场景和优势。以下是几种常见的数据分析方法: 对比分析法:通过比 ...
2024-11-21企业数字化转型是指企业利用数字技术对其业务进行改造和升级,以实现提高效率、降低成本、创新业务模式等目标的过程。这一过程不 ...
2024-11-21数据分析作为一个备受追捧的职业领域,吸引着越来越多的女性加入其中。对于女生而言,在选择成为一名数据分析师时,行业选择至关 ...
2024-11-21大数据技术专业主要学习计算机科学、数学、统计学和信息技术等领域的基础理论和技能,旨在培养具备大数据处理、分析和应用能力的 ...
2024-11-21《Python数据分析极简入门》 第2节 3 Pandas数据查看 这里我们创建一个DataFrame命名为df: importnumpyasnpi ...
2024-11-21越老越吃香的行业主要集中在需要长时间经验积累和专业知识的领域。这些行业通常知识更新换代较慢,因此随着年龄的增长,从业者能 ...
2024-11-20数据导入 使用pandas库的read_csv()函数读取CSV文件或使用read_excel()函数读取Excel文件。 支持处理不同格式数据,可指定分隔 ...
2024-11-20大数据与会计专业是一门结合了大数据分析技术和会计财务理论知识的新型复合型学科,旨在培养能够适应现代会计业务新特征的高层次 ...
2024-11-20要成为一名数据分析师,需要掌握一系列硬技能和软技能。以下是成为数据分析师所需的关键技能: 统计学基础 理解基本的统计概念 ...
2024-11-20是的,Python可以用于数据分析。Python在数据分析领域非常流行,因为它拥有丰富的库和工具,能够高效地处理从数据清洗到可视化的 ...
2024-11-20在这个数据驱动的时代,数据分析师的角色变得愈发不可或缺。他们承担着帮助企业从数据中提取有价值信息的责任,而这些信息可以大 ...
2024-11-20数据分析作为现代信息时代的支柱之一,已经成为各行业不可或缺的工具。无论是在商业、科研还是日常决策中,数据分析都扮演着至关 ...
2024-11-20数字化转型已成为当今商业世界的热点话题。它不仅代表着技术的提升,还涉及企业业务流程、组织结构和文化的深层次变革。理解数字 ...
2024-11-20在现代社会的快速变迁中,选择一个具有长期增长潜力的行业显得至关重要。了解未来发展前景好的行业不仅能帮助我们进行职业选择, ...
2024-11-20统计学专业的就业方向和前景非常广泛且充满机遇。随着大数据、人工智能等技术的快速发展,统计学的重要性进一步凸显,相关人才的 ...
2024-11-20