mou年電影國內票房最高的演員是誰

基本數據情況:

  1. 票房數據來自中國票房網(cbooo.cn)

  2. 評分數據來自豆瓣電影(movie.douban.com)、貓眼(maoyan.com)、時光網(mtime.com)、IMDB(imdb.com)

  3. 導演、演員信息來自豆瓣電影

  4. 共 522 部電影,4723 位影人

  5. 由於從幾個不同網站抓取數據,有些名稱會不一致,或者出現部分數據缺失的情況。因此這個數據並不是絕對完整的,但不影響整體結論

  6. 影片所屬類型沒有嚴格定義,且會有多個類型。實際選取方式我們在下面會有具體說明。

 

電影總排行:

這個排名大家都不陌生,沒啥好多說的,好玩的在後面。

 

票房分佈

我們將所有電影按評分和票房做成散點分佈圖,得到上述圖片。此圖是動態可交互的,這裏我截幾張有代表性的(點擊圖片後可放大):

依次是動作、喜劇、劇情、動畫四類電影分佈。粗略一看,動作片是比較受市場歡迎的,畢竟選擇去觀看大屏幕,很大程度也是爲了享受特效和視聽感受。喜劇和劇情也還不錯,但高票房的動畫片就很少了。

 

類型片

這張圖是不同影片類型的數量和評分情況。劇情、喜劇、動作是三大主流類型

從評分上看,動畫片最高,我很早就發現了這個現象,我覺得可能是因爲動畫片類型明確,會觀看並評價的人本身對其接受度高,而不喜歡的人壓根兒就不會去看。劇情片整體評分也不錯,可見能把一個故事說好,觀衆就挺滿意了。愛情片、驚悚片則是一向是爛片的高發地帶

說明下:這裏的類型是重複計算的,一部片會既是動作片,又是喜劇片。另外由於豆瓣上一些電影評分數量太少而不顯示,所以這裏的電影數量會和票房數量有所差異。

 

從票房上看,動作片不管是總量還是平均,都很強勢。值得注意的是科幻片,雖然一般認爲這是個小衆類型,但與廣義科幻沾邊的影片平均票房卻不低(這裏面Marvel貢獻了不少),今年的小破球更是創造了新的紀錄。戰爭片則是被《紅海行動》一片之力拉高了平均值。

 

月度票房

將類型片的票房按月劃分,得到了這張圖。春節檔無疑是一年最搶錢的檔期,而喜劇片又是此檔期的絕對主力。暑期檔則是另一個票房小高峯。動作片一年四季都不錯

這裏的月度劃分是按首映日期,所以會有一些提前,比如國慶檔的票房都記在了九月份。

 

以上面幾組數據來看,如果哪位土豪讀者想投資拍電影,選擇動作片是比較保險的,記得要把故事說好,最好再加點科幻元素,在春節前上映

 

評分對比

這裏做了 IMDB、時光網、貓眼分別和豆瓣評分的關係對比。

按理說,如果兩個網站的評分基本一致的話,這些點應當分佈在對角線上。IMDB、時光網和豆瓣還是差不多的(豆瓣其實是5星制,最低2分)。再細分一下,時光網和豆瓣的相關性要比 IMDB 更大(文化差異),好片比爛片的相關性更大(好片都說好,爛片則口味不同)。

有意思的是貓眼(最右側圖),它的評分普遍要比豆瓣高,相信很多人都有直觀感受。當然這也有它的原因:貓眼買了票的人才會評分,那一般總歸會選個自己愛看的吧

【彩蛋】圖上右下角有個令人矚目的孤點,這部電影是個例外,它貓眼評分2.9,豆瓣卻有6.9,你知道是哪部嗎?(可以留言猜一下,我待會兒在留言中公佈答案)如果你瞭解此片背後的故事,定會一拍大腿恍然大悟。

 

演員

好了,到了公佈最終結果的時候。

第一名:王成思

參演電影:《西虹市首富》25億;《唐人街探案2》34億;《李茶的姑媽》6億

 

這……是誰啊,演的誰……

斯坦·李憑藉各種客串,位列第3。而另一位能在Marvel、DC兩道均能跑龍套的約翰·蓋蒂爾,也躋身前十,同樣也不知道他演的角色……

 

 

怎麼樣,有沒有出乎你的意料?現在你可以拿這個去問別人了

 

所有圖表在網頁上都是動態可交互的,訪問地址請在我們公衆號(Crossin的編程教室)裏回覆關鍵字 票房

代碼也已上傳,並附帶有說明文檔,大致說明了實現思路、文件說明、技術細節。同樣回覆關鍵字 票房

 

如果你想要跟着實現或運行相關代碼,我這裏再簡單說幾點。

 

項目整體思路:

  1. 通過 中國票房網 獲得2018年大陸上映電影和每部電影票房數據

  2. 根據已有的票房數據,通過豆瓣 api 和詳細頁面,獲得每部電影的導演,演員和豆瓣評分等詳細數據

  3. 分別通過 貓眼、時光網 和 imdb,獲取這三個網站的電影評分數據

  4. 新建影人條目,利用豆瓣獲得的影人數據,對2018年每個演員年參演電影進行統計

  5. 根據已有數據作圖,分析2018年電影票房排名、不同網站評分差異、電影票房-評分關係等

 

開發環境及所需庫:

  • python 3.6(3.5以上版本應該都沒啥問題)

  • jupyter notebook - 這個之前介紹過多次,數據分析好幫手

  • requests - 網頁抓取

  • bs4 - 網頁文本分析

  • pymongo - 本項目用了 mongodb 數據庫

  • numpy - 數據計算必備

  • pyecharts - 繪圖工具包 ECharts 的封裝

 

有幾點值得注意的是:

  1. 因爲豆瓣的搜索結果是模糊匹配,根據電影名會搜出多部電影,因此匹配豆瓣信息時增加了人工干預的步驟。這部分代碼可以再優化。

  2. 項目使用 MongoDB 作爲數據存儲,這不是必須的,你可以把這部分代碼改成文件保存。另外如果你只是想做數據分析,也可以拿我們抓取好導出的數據,免除抓取之苦。(附帶在項目中,僅供學習,請勿商用,否則後果自負)

     

部分代碼(僅演示,完整代碼見項目倉庫):

抓取並保存

client = pymongo.MongoClient()
db = client.chinamovies # 獲取或新建名爲 chinamovies 的 database
collections = db.movies # 獲取或者新建了一個表
url_origin = 'http://www.cbooo.cn/Mdata/getMdata_movie?area={area}&type=0&year=2018&initial=%E5%85%A8%E9%83%A8&pIndex={page}'
url = url_origin.format(area=area, page=page)
req = requests.get(url, headers=headers)
data = req.json()
collections.insert_many(data['pData'])

獲取豆瓣信息

url_api = 'https://api.douban.com/v2/movie/search?q={}'.format(moviename)
req = requests.get(url_api, headers=headers)
data_total = req.json()['subjects']
if not data_total:
    print('你搜索的不存在:', moviename)
else:
    print(data_total[0])

計算影人蔘演票房總和

for i in col_casts.find():
    total_box = 0
    for j in i['movie_id']:
        movie = collections_detail.find_one({'id': j})
        if movie['boxoffice']:
            total_box += int(movie['boxoffice'])
    col_casts.update_one({'_id': i['_id']}, {'$set': {'total_box': total_box}}, upsert=True)

輸出票房/評分分佈散點圖

scatter = Scatter("電影評分-票房")
total_num = 0
for i in genre:
    total_num += len(genre[i]['rate'])
    scatter.add(i, genre[i]['boxoffice'], genre[i]['rate'], **other_setting, extra_name=genre[i]['title'],
                xaxis_name='票房(億)', yaxis_name='評分', yaxis_name_gap=20,yaxis_min=2, symbol_size=5,
                label_formatter='{c}', is_label_emphasis=True, is_toolbox_show=False)
scatter.render('電影評分-票房.html')

 

查看交互圖表和代碼地址:

2018電影國內票房數據分析
在線交互演示(建議電腦上查看):
http://ppp.py2china.cn/data/2018moviebox.html
代碼倉庫地址:
https://gitee.com/crossin/snippet/tree/master/chinamovies2018

《哪吒》票房預測:
https://gitee.com/crossin/snippet/tree/master/nezha

2019 票房分析
https://github.com/zhouwei713/data_analysis/tree/master/movie_box_office

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章