python分析《西虹市首富》貓眼觀眾評論

1描滔、背景

《西虹市首富》電影如火如茶的熱映中,評價褒貶不一露氮。評論有水軍祖灰,有苛刻的專業(yè)評論。那整體對于電影的評價和分布到底是怎樣的呢畔规?接下來將爬去和分析貓眼電影用戶的評論局扶。

2、數(shù)據(jù)準備

(1)API獲取評論

貓眼API

通過貓眼電影提供的API,獲取電影的評論三妈。由于API的限制畜埋,總共可以獲得999頁的評論,每頁大概有25條評論畴蒲。但實際評論的數(shù)量肯定不止這么多由捎,所有在初識爬去評論后,還需要再搞個crontab每10分鐘再爬去一下最新的評論饿凛。注意事項如下:

a.記錄的存儲

由于是一個持續(xù)更新的過程,這里采用mysql存儲歷史采集的數(shù)據(jù)软驰。主要關(guān)心的字段如下:city(評論人城市)涧窒、content(評論內(nèi)容)、cid(評論的ID锭亏、排重用)纠吴、score(評分)、gender(性別)慧瘤、starttime(評論時間)戴已。

b.記錄的排重

在數(shù)據(jù)抓去時,數(shù)據(jù)本身還在更新锅减,很有可能會重復(fù)抓貼糖儡;另外,有很多水貼怔匣,這些都是需要過濾的握联。通過用cid來判斷是否該貼已經(jīng)被采集。

(2)數(shù)據(jù)清洗

a.數(shù)據(jù)加載

df1 = pd.read_sql(sql, conn)

pandas讀取mysql有如上方式每瞒,其中參數(shù)為1金闽、sql,讀取的sql語句剿骨,讀取全部可寫select *代芜;2、conn為連接數(shù)據(jù)庫的connection浓利。加載完數(shù)據(jù)大致如下:

mysql數(shù)據(jù)至pandas

b.數(shù)據(jù)轉(zhuǎn)換

b1挤庇、將city對應(yīng)至各省

單存城市的分析無太大意義,但按省分析或許能找到很多特征荞膘。通過分析罚随,city字段可能是該評論人所在市、縣的名稱羽资。因此需要有映射表實現(xiàn)市淘菩、縣-->省。github有個項目:https://github.com/wecatch/china_regions,有次對應(yīng)關(guān)系潮改。選取合適的類型下載狭郑,如選擇sql形式下載,并放在數(shù)據(jù)庫當中汇在。

加載對應(yīng)關(guān)系至pandas:通過select n.a_name a_name,n.c_name c_name,p.name p_name from (select a.name a_name, c.name c_name, c.province_id from city c left join area a on a.city_id = c.city_id) n left join province p on n.province_id = p.province_id翰萨,并讀取至pandas,可得如下數(shù)據(jù):

關(guān)系

由于貓眼的城市名稱都是簡寫糕殉,而以上的映射關(guān)系是全城(如:新疆維吾爾自治區(qū))亩鬼,因此如果完全對應(yīng)存在困難,一種方式是在簡寫名稱上添加“市”阿蝶、“縣”雳锋,然后與映射表匹配;另一種是兩邊名稱都只選前兩個字來模糊映射羡洁,這種雖然有誤差玷过,但如果誤差很小的話,作為簡便方法筑煮,還是可使用的辛蚊。下面來介紹如何通過截斷匹配。

首先將映射表形成一個字典真仲,key為市袋马、縣,value為省袒餐。此時飞蛹,key只選擇前兩個字key[:2]。取名為p_dict

其次灸眼,將貓眼評論的城市節(jié)選前兩個字:

cut_func =lambda x: x[0:2] #構(gòu)造lambda函數(shù)卧檐,其中l(wèi)ambda為單行可具備多參數(shù)的函數(shù)

df1['city'] = df1['city'].map(cut_func) #利用map來截斷數(shù)據(jù),其中map可利用函數(shù)或字典來實現(xiàn)字段對應(yīng)

最后焰宣,再將簡寫城市對應(yīng)至映射表當中:

df1['city']=df1['city'].map(p_dict)

最終的效果如下:

效果

b2霉囚、時間的截取

同理,時間的化我們可能會按天來觀察數(shù)據(jù)匕积,因此只截取日期即可:df1['starttime']=df1['starttime'].map(lambda x: x[:10])

(3)數(shù)據(jù)展示與觀察

a.按省來看評論數(shù)

count = df1.groupby('city').count()盈罐;count = count.sort_values(by='score');c_city = count.index闪唆;c_score = count['score']盅粪;show(c_city,c_score)

省評論分布

可見貓眼評論最多的是江蘇省,

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末悄蕾,一起剝皮案震驚了整個濱河市票顾,隨后出現(xiàn)的幾起案子础浮,更是在濱河造成了極大的恐慌,老刑警劉巖奠骄,帶你破解...
    沈念sama閱讀 211,042評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件豆同,死亡現(xiàn)場離奇詭異,居然都是意外死亡含鳞,警方通過查閱死者的電腦和手機影锈,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評論 2 384
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來蝉绷,“玉大人鸭廷,你說我怎么就攤上這事∪勐穑” “怎么了靴姿?”我有些...
    開封第一講書人閱讀 156,674評論 0 345
  • 文/不壞的土叔 我叫張陵,是天一觀的道長磁滚。 經(jīng)常有香客問我,道長宵晚,這世上最難降的妖魔是什么垂攘? 我笑而不...
    開封第一講書人閱讀 56,340評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮淤刃,結(jié)果婚禮上晒他,老公的妹妹穿的比我還像新娘。我一直安慰自己逸贾,他們只是感情好陨仅,可當我...
    茶點故事閱讀 65,404評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著铝侵,像睡著了一般灼伤。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上咪鲜,一...
    開封第一講書人閱讀 49,749評論 1 289
  • 那天比伏,我揣著相機與錄音痕慢,去河邊找鬼。 笑死,一個胖子當著我的面吹牛摩窃,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播搪哪,決...
    沈念sama閱讀 38,902評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼巡扇,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了炊琉?” 一聲冷哼從身側(cè)響起展蒂,我...
    開封第一講書人閱讀 37,662評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后玄货,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體皇钞,經(jīng)...
    沈念sama閱讀 44,110評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,451評論 2 325
  • 正文 我和宋清朗相戀三年松捉,在試婚紗的時候發(fā)現(xiàn)自己被綠了夹界。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,577評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡隘世,死狀恐怖可柿,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情丙者,我是刑警寧澤复斥,帶...
    沈念sama閱讀 34,258評論 4 328
  • 正文 年R本政府宣布,位于F島的核電站械媒,受9級特大地震影響目锭,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜纷捞,卻給世界環(huán)境...
    茶點故事閱讀 39,848評論 3 312
  • 文/蒙蒙 一痢虹、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧主儡,春花似錦奖唯、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,726評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至寂汇,卻和暖如春病往,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背骄瓣。 一陣腳步聲響...
    開封第一講書人閱讀 31,952評論 1 264
  • 我被黑心中介騙來泰國打工荣恐, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人累贤。 一個月前我還...
    沈念sama閱讀 46,271評論 2 360
  • 正文 我出身青樓叠穆,卻偏偏與公主長得像,于是被迫代替她去往敵國和親臼膏。 傳聞我的和親對象是個殘疾皇子硼被,可洞房花燭夜當晚...
    茶點故事閱讀 43,452評論 2 348

推薦閱讀更多精彩內(nèi)容