中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python爬取《隱秘的角落》的彈幕

發布時間:2020-07-02 14:31:02 來源:億速云 閱讀:166 作者:清晨 欄目:開發技術

小編給大家分享一下Python爬取《隱秘的角落》的彈幕,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討方法吧!

前言

估計最近很火的連續劇《隱秘的角落》大家趁著端午假期都看過了吧?小編也跟著潮流,一口氣把12集的連續劇全部看完了。看過的人肯定對朋友圈里有人發的“一起去爬山”、“小白船”、“還有機會嗎”的意思心照不宣。沒看過的,如果已為人父人母的,強烈要求看一下。

劇很精彩,但追劇界有句俗話說得好:“彈幕往往比劇更精彩”,為了讓精彩延續下去,咱們來看看該劇彈幕的部分。電視劇是在愛奇藝獨播,因此從愛奇藝上爬蟲最為合適。

爬取彈幕

愛奇藝的彈幕數據是以 .z 形式的壓縮文件存在的,先獲取 tvid 列表,再根據 tvid 獲取彈幕的壓縮文件,最后對其進行解壓及存儲,大概就是這樣一個過程。

def get_data(tv_name,tv_id):
 url = https://cmts.iqiyi.com/bullet/{}/{}/{}_300_{}.z
 datas = pd.DataFrame(columns=[uid,contentsId,contents,likeCount])
 for i in range(1,20):
  myUrl = url.format(tv_id[-4:-2],tv_id[-2:],tv_id,i)
  print(myUrl)
  res = requests.get(myUrl)
  if res.status_code == 200:
   btArr = bytearray(res.content)
   xml=zlib.decompress(btArr).decode(utf-8)
   bs = BeautifulSoup(xml,"xml")
   data = pd.DataFrame(columns=[uid,contentsId,contents,likeCount])
   data[uid] = [i.text for i in bs.findAll(uid)]
   data[contentsId] = [i.text for i in bs.findAll(contentId)]
   data[contents] = [i.text for i in bs.findAll(content)]
   data[likeCount] = [i.text for i in bs.findAll(likeCount)]
  else:
   break
  datas = pd.concat([datas,data],ignore_index = True)
 datas[tv_name]= str(tv_name)
 return datas

共爬取得到201865 條《隱秘的角落》彈幕數據。

Python爬取《隱秘的角落》的彈幕

彈幕發射器

按照用戶id分組并對彈幕id計數,可以得到每位用戶的累計發送彈幕數。

#累計發送彈幕數的用戶
danmu_counts = df.groupby(uid)[contentsId].count().sort_values(ascending = False).reset_index()
danmu_counts.columns = [用戶id,累計發送彈幕數]
danmu_counts.head()

Python爬取《隱秘的角落》的彈幕

累計發送彈幕數用戶top5

第一名竟然發送了2561條彈幕,這只是一部12集的網劇啊。

難道他/她是水軍?每條都發的差不多?

df_top1 = df[df[uid] == 1810351987].sort_values(by="likeCount",ascending = False).reset_index()
df_top1.head(10)

Python爬取《隱秘的角落》的彈幕

然而并不是,每一條彈幕都是這位觀眾的有感而發,可能他/她只是在發彈幕的同時順便看看劇吧。

這位“彈幕發射器”朋友,在每一集的彈幕量又是如何呢?

Python爬取《隱秘的角落》的彈幕

分集&平均彈幕量

是不是通過上圖可以側面說明個別劇集的戲劇沖突更大,更能引發觀眾吐槽呢?

“彈幕發射器”同志,11、12集請加大輸出!

這些彈幕大家都認同

拋開“彈幕發射器”同志,我們繼續探究一下分集的彈幕。

看看每一集當中,哪些彈幕大家都很認同(贊)?

df_like = df[df.groupby([tv_name])[likeCount].rank(method="first", ascending=False)==1].reset_index()[[tv_name,contents,likeCount]]
df_like.columns = [劇集,彈幕,贊]
df_like

Python爬取《隱秘的角落》的彈幕

每一集中點贊最多的彈幕

每一集的最佳彈幕都是當集劇情的濃縮,這些就是觀眾們票選出來的梗(吐槽)啊!

應該不算劇透吧,不算吧,不算吧

實在不行我請你去爬山也可

Python爬取《隱秘的角落》的彈幕

除了劇本、音樂等,“老戲骨”和“小演員”們的演技也獲得了網友的一致好評。

這部劇雖然短短12集,但故事線不僅僅在一兩個人身上。每個人都有自己背后的故事,又因為種種巧合串聯在一起,引發觀眾的持續性討論。

我們統計一下演員們在彈幕中的出現次數,看看劇中的哪些角色大家提及最多

看完了這篇文章,相信你對Python爬取《隱秘的角落》的彈幕有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

德昌县| 岑溪市| 青神县| 扶风县| 辽阳市| 荣昌县| 麻城市| 铜山县| 商南县| 分宜县| 边坝县| 泰宁县| 泸水县| 邮箱| 乌审旗| 鲁山县| 蒙自县| 定陶县| 大姚县| 比如县| 南宁市| 宁武县| 泸溪县| 墨竹工卡县| 曲沃县| 兰溪市| 漯河市| 鹤峰县| 万安县| 宿松县| 启东市| 油尖旺区| 伊金霍洛旗| 化德县| 桐梓县| 涟水县| 银川市| 新密市| 平塘县| 泗阳县| 万源市|