
【導語】:今天我們來聊聊最近的社交游戲新寵--劇本殺,Python技術部分請看第三部分。
Show me data,用數(shù)據說話
今天我們聊一聊 劇本殺
如果問,線下聚會可以玩兒什么?狼人殺?密室逃脫?
nonono,說道現(xiàn)在社交游戲的新寵,就不得不提到ta——劇本殺。
劇本殺,最初源于歐美派對游戲“謀殺之謎”。玩家們需要根據自己拿到的劇本扮演角色,與其他玩家一起共同演繹故事,通過線索推斷、交流,共同找到兇手并揭開故事全貌。
與狼人殺相似的是,二者都需要通過推理和表演找出兇手或者是掩飾自己。不同的是,狼人殺只有一個固定的劇情,即狼人在夜晚殺害村民,村民要在白天找出兇手。
而劇本殺則有不同的故事,無論從劇本、犯罪、作案到人物劇情都很多樣化,加上線下劇本殺配備的服裝、布景、道具,甚至玩上一局劇本殺,感覺像是經歷了一場驚險刺激的沉浸式懸疑電影!
今天,我們就用數(shù)據跟大家盤一盤劇本殺。
01被高分綜藝帶火的劇本殺
很多小伙伴第一次聽說劇本殺,可能都是因為《明星大偵探》(下文簡稱《明偵》)。2016年的3月,芒果TV首播明星推理真人秀《明偵》第一季。目前《明偵》共推出了五季,播出后在豆瓣的評分都還不錯,分別是9.3/ 9.1 / 9.1 / 8.6/ 8.5.角色扮演、搜證、推理基本構成了許多人對劇本殺的第一印象。
隨著《明偵》的大火,劇本殺也逐漸走進大眾的視野。
說白了,劇本殺就是一個集邏輯推理和角色扮演于一體的社交游戲。人生如戲,劇本殺讓玩家通過演繹角色切身體會到不一樣的多彩人生,同時通過邏輯推理讓玩家在游戲中獲得解謎燒腦的樂趣。
02從線下門店到線上應用 劇本殺到底有多火?
近幾年,劇本殺無論是線下實體店還是線上應用都得到了迅速的發(fā)展。
根據對美團點評的數(shù)據整理,2017年年初,劇本殺門店還僅有幾十家,2018年年初增加到幾百家,截至2019年12月,全國的劇本殺店已經由1月初的2400家飆升到12000家,一年之間開出一萬家門店。
在今年2020年初,因受疫情影響,無法出門活動的人們迅速將目光聚集到了線上。大年初一,正處于疫情初期,就有用戶反應《我是謎》APP游戲卡頓,同時微博熱搜榜劇本殺APP《我是謎》也登榜,大量網友均反映系統(tǒng)崩潰。
隨后《我是謎》創(chuàng)始人林世豪連忙發(fā)微博表示,對激增的訪問人數(shù)感到驚訝,并表示馬上叫程序員來修復。
說道劇本殺的核心,當然是劇本啦。故事寫得好不好,情節(jié)和邏輯設置是否吸引人都是玩家尤其關注的點。那么哪些劇本最受追捧,劇本都在什么價錢呢?下面我們帶大家分析下淘寶店鋪的數(shù)據。
03用Python分析淘寶店鋪劇本殺數(shù)據
作為桌游當中的一種,劇本殺在淘寶的銷量數(shù)據如何呢?
我們用Python爬取了淘寶上的桌游劇本殺的關鍵詞數(shù)據,下面一起具體看看:
桌游銷量TOP10淘寶店鋪
首先,我們看看那些桌游店鋪最熱門。
其中這家九卓家居專營店銷量最高,其次位居二三的分別是游卡桌游昆高專賣店和艾雅玩具店。不過要注意的是,比起普通玩家,這些店鋪買東西的主力肯定還是各大桌游店。
桌游店鋪地區(qū)排名TOP10
這方面可以看到,桌游方面的淘寶店鋪主要還是位于一線城市的。其中,上海、廣東為第一第二位。浙江名列第三,北京位居第四。
桌游卡牌的價格區(qū)間
什么價位的桌游卡牌銷量最高呢?
通過分析發(fā)現(xiàn),顯然50元以下的桌游銷量最高,銷售額占比高達42.72%。其次是50-100元的,銷售額占比22.47%。然后比較貴的100-200的桌游銷售額占比17.05%。
其中最主要的原因就是便宜,現(xiàn)在的50塊錢可能連一頓下午茶錢都不夠,二是因為50塊錢的桌游大多數(shù)以紙牌為主,小巧便利,方便攜帶,出門消磨時光必備物件,很適合我們的生活方式,想要玩大型桌游,還是踏實去桌游店吧,規(guī)則看不懂還有法官。
劇本殺店鋪銷量數(shù)據
說完桌游店鋪的數(shù)據,那么專門出售劇本殺相關產品的店鋪數(shù)據如何呢?我們挑選了一家最火爆的劇本殺店鋪,進行了分析。下面看到具體分析步驟:
我們使用Python獲取了淘寶網上GoDan正版劇本殺商城商品和熱評的數(shù)據進行了數(shù)據分析,地址如下:
https://shop387156301.taobao.com/category-1515015677.htm
實做過程分為:
數(shù)據獲取
數(shù)據預處理
數(shù)據分析與可視化
1、數(shù)據獲取
代碼
# 導入所需包 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) # 保存數(shù)據 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)) # 運行函數(shù) df_one = parse_one_page() # 循環(huán)追加 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()
我們獲取到的數(shù)據格式如下,共有7頁146條數(shù)據:
df.head()
2、數(shù)據導入和數(shù)據預處理
主要包含以下部分工作:
title:提取一級標題和二級標題
price:提取數(shù)值
sales_num:提取數(shù)值
comment_num:提取數(shù)值
sales_amount:price * sales_num
# 導入包 import numpy as np import pandas as pd import re # 讀入數(shù)據 df = pd.read_excel('../data/淘寶劇本商城數(shù)據.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') # 評論數(shù)量 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、數(shù)據探索和可視化
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
# 產生數(shù)據對 data_pair = [list(z) for z in zip(price_num.index.tolist(), price_num.values.tolist())] # 繪制餅圖 # {a}(系列名稱),(數(shù)據項名稱),{c}(數(shù)值), geybsqlxm7mc(百分比) 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=":geybsqlxm7mc%")) pie1.set_colors(['#2C69B0', '#EA6B73', '#AC613C', '#E9C39B']) pie1.render()![]()
首先看到價格區(qū)間。對比桌游50元以下的價格商品最熱門,GoDan的劇本殺就很不一樣了,而是價格在200 - 500之間產品最多,占比77.87%。畢竟一個劇本大概需要過五萬字的文學創(chuàng)作,這個價錢也對得起我們的內容創(chuàng)作者。
銷量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 愛幼婦產醫(yī)院 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君都還沒有玩過,可能是孤落寡聞了,但是「殺人回憶」這個本很多家桌游店都推過,玩起來非常不錯,有機會可以統(tǒng)統(tǒng)嘗試下。
04玩了幾百場劇本殺,如何精準發(fā)現(xiàn)當中套路
最近C君也沉迷于劇本殺,在玩了很多很多很多劇本后,發(fā)現(xiàn)一個驚人的事實,關于一個不用思考就可以找出兇手的邏輯,分享給你,保準你每次都是MVP。
當你玩了上百次劇本殺以后,你會發(fā)現(xiàn)當中的犯案動機真的是多種多樣的,有時候還讓人特別意想不到。所以想但從殺人動機、證據推理上推斷出兇手那根本不可能,而且現(xiàn)在許多新出劇本寫的越來越離譜,那該怎么玩兒呢?
所以古人有云,撥開表明看本質,當中的核心點就是“存在感”,而且是人越少越準。其實這和狼人殺中的珉人是一個道理,都是玄學。
但是劇本殺是游戲,是短時間信息密集游戲,所以每一個出場人物都有他純在的道理。舉個例子,去電影院看《唐人街探案》,人人都是福爾摩斯,但在生活中秒變腦殘黨,為什么?
其中很重要的就是圈層限定,兇手肯定是常出現(xiàn)的幾個人之中,去掉主角、去掉醬油、可能只有一個人讓你選了,劇本殺也一樣,每個人都有必要的任務,你把每個人任務弄清楚,基本可以得出兇手是誰,這可比去盤邏輯簡單多了。
有人會問,這不就失去了劇本殺的原本的樂趣了么?那就錯了,其實玩劇本殺的人都知道,能投對兇手的劇本都是好劇本,投錯了的劇本都是垃圾,最后結果還是很重要的。
結語
最后想說的是,劇本殺真的可以發(fā)散人的思維,因為這里有各種稀奇古怪的劇情,比電視劇可有意思多了,喜歡演戲,喜歡開腦洞的朋友們一定要去嘗試下哦。
參考文獻
劇本殺,能「殺」出一條財路嗎?| 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
數(shù)據分析咨詢請掃描二維碼
若不方便掃碼,搜微信號:CDAshujufenxi
LSTM 模型輸入長度選擇技巧:提升序列建模效能的關鍵? 在循環(huán)神經網絡(RNN)家族中,長短期記憶網絡(LSTM)憑借其解決長序列 ...
2025-07-11CDA 數(shù)據分析師報考條件詳解與準備指南? ? 在數(shù)據驅動決策的時代浪潮下,CDA 數(shù)據分析師認證愈發(fā)受到矚目,成為眾多有志投身數(shù) ...
2025-07-11數(shù)據透視表中兩列相乘合計的實用指南? 在數(shù)據分析的日常工作中,數(shù)據透視表憑借其強大的數(shù)據匯總和分析功能,成為了 Excel 用戶 ...
2025-07-11尊敬的考生: 您好! 我們誠摯通知您,CDA Level I和 Level II考試大綱將于 2025年7月25日 實施重大更新。 此次更新旨在確保認 ...
2025-07-10BI 大數(shù)據分析師:連接數(shù)據與業(yè)務的價值轉化者? ? 在大數(shù)據與商業(yè)智能(Business Intelligence,簡稱 BI)深度融合的時代,BI ...
2025-07-10SQL 在預測分析中的應用:從數(shù)據查詢到趨勢預判? ? 在數(shù)據驅動決策的時代,預測分析作為挖掘數(shù)據潛在價值的核心手段,正被廣泛 ...
2025-07-10數(shù)據查詢結束后:分析師的收尾工作與價值深化? ? 在數(shù)據分析的全流程中,“query end”(查詢結束)并非工作的終點,而是將數(shù) ...
2025-07-10CDA 數(shù)據分析師考試:從報考到取證的全攻略? 在數(shù)字經濟蓬勃發(fā)展的今天,數(shù)據分析師已成為各行業(yè)爭搶的核心人才,而 CDA(Certi ...
2025-07-09【CDA干貨】單樣本趨勢性檢驗:捕捉數(shù)據背后的時間軌跡? 在數(shù)據分析的版圖中,單樣本趨勢性檢驗如同一位耐心的偵探,專注于從單 ...
2025-07-09year_month數(shù)據類型:時間維度的精準切片? ? 在數(shù)據的世界里,時間是最不可或缺的維度之一,而year_month數(shù)據類型就像一把精準 ...
2025-07-09CDA 備考干貨:Python 在數(shù)據分析中的核心應用與實戰(zhàn)技巧? ? 在 CDA 數(shù)據分析師認證考試中,Python 作為數(shù)據處理與分析的核心 ...
2025-07-08SPSS 中的 Mann-Kendall 檢驗:數(shù)據趨勢與突變分析的有力工具? ? ? 在數(shù)據分析的廣袤領域中,準確捕捉數(shù)據的趨勢變化以及識別 ...
2025-07-08備戰(zhàn) CDA 數(shù)據分析師考試:需要多久?如何規(guī)劃? CDA(Certified Data Analyst)數(shù)據分析師認證作為國內權威的數(shù)據分析能力認證 ...
2025-07-08LSTM 輸出不確定的成因、影響與應對策略? 長短期記憶網絡(LSTM)作為循環(huán)神經網絡(RNN)的一種變體,憑借獨特的門控機制,在 ...
2025-07-07統(tǒng)計學方法在市場調研數(shù)據中的深度應用? 市場調研是企業(yè)洞察市場動態(tài)、了解消費者需求的重要途徑,而統(tǒng)計學方法則是市場調研數(shù) ...
2025-07-07CDA數(shù)據分析師證書考試全攻略? 在數(shù)字化浪潮席卷全球的當下,數(shù)據已成為企業(yè)決策、行業(yè)發(fā)展的核心驅動力,數(shù)據分析師也因此成為 ...
2025-07-07剖析 CDA 數(shù)據分析師考試題型:解鎖高效備考與答題策略? CDA(Certified Data Analyst)數(shù)據分析師考試作為衡量數(shù)據專業(yè)能力的 ...
2025-07-04SQL Server 字符串截取轉日期:解鎖數(shù)據處理的關鍵技能? 在數(shù)據處理與分析工作中,數(shù)據格式的規(guī)范性是保證后續(xù)分析準確性的基礎 ...
2025-07-04CDA 數(shù)據分析師視角:從數(shù)據迷霧中探尋商業(yè)真相? 在數(shù)字化浪潮席卷全球的今天,數(shù)據已成為企業(yè)決策的核心驅動力,CDA(Certifie ...
2025-07-04CDA 數(shù)據分析師:開啟數(shù)據職業(yè)發(fā)展新征程? ? 在數(shù)據成為核心生產要素的今天,數(shù)據分析師的職業(yè)價值愈發(fā)凸顯。CDA(Certified D ...
2025-07-03