深圳python如何评价_Python分析18万条《八佰》影评,看看观众怎么说?
原標題:Python分析18萬條《八佰》影評,看看觀眾怎么說?
最近《八佰》這部電影比較火,上映僅15天就已斬獲22億票房。對于沉寂了半年、影院上座率仍限定在50%的電影市場而言,這樣的成績出人意料。
從貓眼電影官網可以看到,《八佰》獲得了9.2分的高口碑。一向好奇的我產生了一些疑惑,這些人到底在評論些啥?哪些地方的人評論最多?針對不同演員角色的評論內容有什么不同?
于是,用Python采集了《八佰》18萬條觀眾影評并做可視化分析,數據采集區間為2020年8月21日9點至2020年8月30日24點。
數據獲取
貓眼電影是簡單的動態網頁,數據格式為json,通過解析接口的方式即可輕松獲取。
defparse_page(html):
try:
data = json.loads(html)[ 'cmts'] # 將str轉換為json
#print(data)
comments = []
foritem indata:
comment = {
'id': item[ 'id'],
'nickName': item[ 'nickName'],
'cityName': item[ 'cityName'] if'cityName'initem else'', # 處理cityName不存在的情況
'content': item[ 'content'].replace( 'n', ' ', 10), # 處理評論內容換行的情況
'score': item[ 'score'],
'startTime': item[ 'startTime']
}
comments.append(comment)
returncomments
exceptException ase:
pass
數據清洗 讀取影評數據
importpandas aspd
importnumpy asnp
data=[]
withopen( 'comments.txt', 'r',encoding= 'utf-8-sig') asf_input:
forline inf_input:
data.append(list(line.strip.split( ',')))
data
轉為DataFrame并添加列名
df = pd.DataFrame(data).iloc[:, 0: 6]
df.columns = [ '觀眾ID', '觀眾昵稱', '城市', '評論內容', '評分', '評論時間']
刪除重復記錄和缺失值
df = df.drop_duplicates
df = df.dropna
預覽并保存
df.sample( 5)
df.to_csv( "八佰.csv",index= False,encoding= "utf_8_sig")
整體評論詞云
對18萬條影評內容進行分詞,并將頻率最高的500個詞抽離出來制作詞云圖,我們發現廣大觀眾對《八佰》這部戰爭題材電影表現出強烈的情感。除了 好看、 不錯這些贊美之詞以外,更多的是 震撼、 感人、 歷史、 勿忘國恥等代表著強烈民族色彩的詞。
評論類型分布
超過90%的好評率,20億+的票房不是沒有道理。
差評抽樣
差評雖不多,但集中在對《八佰》結局的轟炸。
評論數據量TOP10城市
成都人對《八佰》評論熱情高漲,超過北上廣深等大城市。
相關演員提及
觀眾評論中提及歐豪和端午的次數最多,不知是因為演技還是顏值?
關于端午的評論
關于老算盤的評論
關于羊拐的評論
-----------------
希望系統、快速學習
數據抓取與文本挖掘知識
可以學習數據分析專家@文彤老師的
《跟文彤老師學文本抓取與挖掘》系列視頻課程
系列課程包含以下三門課程
小白零編程網絡爬蟲實戰
Python數據分析--玩轉Pandas
Python數據分析--玩轉文本挖掘
以上順序也是學習的建議順序
課程提供講義(含代碼)與數據供練習
學習過程有問題可加Q群與老師交流討論
10.15~10.18期間參加課程學習
可享受5折優惠
只有四天喔,雙11也沒有這優惠力度
優惠價: 238.50元返回搜狐,查看更多
責任編輯:
總結
以上是生活随笔為你收集整理的深圳python如何评价_Python分析18万条《八佰》影评,看看观众怎么说?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python3 设置默认编码_Pytho
- 下一篇: 模型训练 准确率下降_手写批量线性回归算