天天看點

兩周45億票房!用Python爬取長津湖,分析它好看在哪裡!

十月份的黃金周,乃至整個十月份,妥妥的是《長津湖》的天下,才小半個月票房就已經突破44億,都快追上戰狼2了。貓眼評分9.5,口碑超高,2021年票房口碑雙豐收大黑馬!

兩周45億票房!用Python爬取長津湖,分析它好看在哪裡!

今天我們通過爬取貓眼的電影評論,進行可視化分析,康康長津湖為什麼這麼受歡迎,最後教大家進行票房預測,千萬不要錯過!

貓眼評論爬取,還是那麼老一套,直接構造 API 接口資訊即可

這麼幾行代碼,我們就可以得到如下結果

兩周45億票房!用Python爬取長津湖,分析它好看在哪裡!

擷取到資料後,我們就可以解析傳回的 json 資料,并儲存到本地了。

先寫一個儲存資料的函數

直接通過 Pandas 來儲存資料,可以省去很多資料處理的事情

接下來編寫解析 json 資料的函數

我們把主要資訊提取出來,比如使用者的 nickname,評論時間,所在城市等等,然後把代碼整合,構造爬取得 url 就好了!

儲存到本地的資料

兩周45億票房!用Python爬取長津湖,分析它好看在哪裡!

我們就來進行相關的可視化分析了

1、資料清洗

首先我們根據 comment_id 來去除重複資料

對于評論内容,我們進行去除非中文的操作。

2、評論點贊及回複榜

來看看哪些評論是被點贊最多的

兩周45億票房!用Python爬取長津湖,分析它好看在哪裡!

我們可以看到榜首是一個叫“琦寶”的觀衆寫的評論,點贊量86027。

再看看評論回複

兩周45億票房!用Python爬取長津湖,分析它好看在哪裡!

回複量最高的同樣是“琦寶”的評論,那麼他到底寫了什麼呢?

Output:

還真的是非常走心的評論,而且自己的家人就有經曆過長津湖戰役的經曆,那麼在影院觀影的時候,肯定會有不一樣的感受!

當然我們還可以爬取每條評論的reply資訊,通過如下接口:

隻需要替換 json 檔案名稱為對應的 comment_id 即可,這裡就不再詳細介紹了,感興趣的朋友自行探索呀

下面我們來看一下整體評論資料的情況

3、各城市排行

來看看哪些城市的評論最多呢

兩周45億票房!用Python爬取長津湖,分析它好看在哪裡!

一線大城市紛紛上榜,看來這些城市的愛國主義教育做得還是要好很多呀!

再來看看城市的全國地圖分布:

兩周45億票房!用Python爬取長津湖,分析它好看在哪裡!

可以看到,這個評論城市的分布,也是與我國總體經濟的發展情況相吻合的

4、性别分布

再來看看此類電影,對什麼性别的觀衆更具有吸引力

兩周45億票房!用Python爬取長津湖,分析它好看在哪裡!

在填寫了性别的資料當中,女性竟然多一些,這還是比較出乎意料的

5、是否觀看

貓眼是可以在沒有觀看電影的情況下進行評論的,我們來看看這個資料的情況

兩周45億票房!用Python爬取長津湖,分析它好看在哪裡!

大部分人都是在觀看了之後才評論的,這要在一定程度上保證了評論和打分的可靠性

6、評分分布

貓眼頁面上是10分制,但是在接口當中是5分制

兩周45億票房!用Python爬取長津湖,分析它好看在哪裡!

可以看到5-4.5評論占據了大部分,口碑是真的好啊

7、評論時間分布

對于評論時間,我這裡直接使用了原生的 echarts 來作圖

兩周45億票房!用Python爬取長津湖,分析它好看在哪裡!

能夠看出,在晚上的19點和20點,都是大家寫評論的高峰期,一天的繁忙結束後,寫個影評放松下。

8、每天評論分布

接下來是每天的評論分布情況

兩周45億票房!用Python爬取長津湖,分析它好看在哪裡!

就目前來看,幾乎所有的評論都集中在10月8号,難道是上班第一天,不想上班,隻想摸魚?

9、使用者等級分布

來看下貓眼評論使用者的等級情況,雖然不知道這個等級有啥用

兩周45億票房!用Python爬取長津湖,分析它好看在哪裡!

大家基本都是 level2,哈哈哈哈,普羅大衆嘛

10、主創提及次數

我們再來看看在評論中,各位主創被提及的次數情況

兩周45億票房!用Python爬取長津湖,分析它好看在哪裡!

毫無疑問,易烊千玺高居榜首,可能媽媽粉比較多吧,不過人家演技确實也線上

11、評論詞雲

最後來看看評論的詞雲情況吧

兩周45億票房!用Python爬取長津湖,分析它好看在哪裡!

這裡我們使用線性回歸來進行簡單的票房預測,畢竟票房是一個超級複雜的事物,沒有辦法完全準确地進行估計

我們先通過 AKShare 庫克來擷取這幾天《長津湖》的票房情況

兩周45億票房!用Python爬取長津湖,分析它好看在哪裡!

接下來畫散點圖,看下趨勢情況。

兩周45億票房!用Python爬取長津湖,分析它好看在哪裡!

可以看到,從一号開始,單日票房逐漸增長,7号達到最高峰,8号開始回落

下面我們來進行資料拟合,使用 sklearn 提供的 linear_model 來進行

兩周45億票房!用Python爬取長津湖,分析它好看在哪裡!

再根據拟合的結果,我們來預測下明天的票房情況。

兩周45億票房!用Python爬取長津湖,分析它好看在哪裡!

好啦,坐等明天開獎!