色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

爬取b站上的所有短評進行分析,用數據說明為什么這部動漫會如此受歡迎

電子工程師 ? 來源:lp ? 2019-03-05 09:45 ? 次閱讀

動漫《工作細胞》最終話已經更新完畢,這部動漫在 b 站上評分高達 9.7。除了口碑之外,熱度也居高不下,更值得關注的是連很多平時不關注動漫的小伙伴也加入了追番大軍。這次我們的目標是爬取 b 站上的所有短評進行分析,用數據說明為什么這部動漫會如此受歡迎。

一、工作細胞

《工作細胞》改編自清水茜老師的同名漫畫,由 David Production 制作。眾所周知,日本 ACG 作品向來信奉著“萬物皆可萌”的原則。前有《黑塔利亞》,后有《艦隊Collection》和《獸娘動物園》,分別講述了將國家,戰艦和動物擬人化后的故事。而在《工作細胞》里擬人的對象則輪到了我們的細胞。

這是一個發生在人體內的故事:人的細胞數量,約為37兆2千億個。其中包括了我們的女主角:一個副業是運輸氧氣,主業是迷路的紅血球。

男主角:一個作者懶得涂色但武力值 max 的白血球。兩人一見面就并肩戰斗,分別的時候更是滿天粉紅氣泡。

雖然嘴上說著:不會,我只是千千萬萬個白細胞中的一員。身體卻很誠實,從第一集偶遇女主到最后一集,每一集都充滿了狗糧的味道。37兆分之一的緣分果然妙不可言。

除了男女主角,配角們的人氣也都很高。連反派 boss 癌細胞都有人喜歡,主要還是因為身世感人+臉長得好。當然人氣最!最!最!高的還是我們奶聲奶氣的血小板。

據宅男們反映:“看了這么多番。只有這一部的老婆是大家真正擁有的。”不僅有,還有很多。除了新穎的科普形式,這部番令人感觸最深的是:我們每一個人都不是孤獨的個體,有37兆個只屬于我們的細胞和我們一同工作不息。每當頹唐和失意的時候,為了那些為了保護你而戰斗不止的免疫細胞,為了萌萌的老婆們也要振作起來啊。

《工作細胞》的成功并不是一個偶然,而是眾多因素共同作用的結果。下面從數據的角度分析它成為今年7月播放冠軍的原因。

謝謝宇哥對這部分的貢獻,顯然超出我的能力范圍!

二、爬蟲

首先要做的是爬取 b 站的所有短評,包括評論用戶名、評論時間、星級(評分)、評論內容、點贊數等內容,本部分內容為爬蟲代碼的說明,不感興趣的讀者可以直接跳過,閱讀下一部分的分析。

爬的過程寫了很久,b站短評不需要登陸直接就可以爬,剛開始用類似之前爬豆瓣的方法,用 Selenium+xpath 定位爬

但 b 站短評用這種方法并不好處理。網站每次最多顯示 20 條短評,滾動條移動到最下面才會加載之后的 20 條,所以剛開始用了每次爬完之后將定位到當前爬的位置的方法,這樣定位到當前加載的最后一條時,就會加載之后的 20 條短評。

邏輯上是解決了這個問題,但真的爬的時候就出現了問題,一個是爬的慢,20條需要十來秒的樣子,這個沒關系,大不了爬幾個小時,但問題是辛辛苦苦爬了兩千多條之后,就自動斷了,不知道是什么原因,雖然之前爬的數據都存下來了,但沒法接著斷開的地方接著爬,又要重新開始,還不知道會不會又突然斷,所以用這種方法基本就無解了。代碼附在下面,雖然是失敗的,但也可以爬一些評論下來,供參考。

1#-*-coding:utf-8-*- 2""" 3CreatedonMonSep1019:36:242018 4""" 5fromseleniumimportwebdriver 6importpandasaspd 7fromdatetimeimportdatetime 8importnumpyasnp 9importtime10importos1112os.chdir('F:\python_study\pachong\工作細胞')13defgethtml(url):1415browser=webdriver.PhantomJS()16browser.get(url)17browser.implicitly_wait(10)18return(browser)1920defgetComment(url):2122browser=gethtml(url)23i=124AllArticle=pd.DataFrame(columns=['id','author','comment','stars1','stars2','stars3','stars4','stars5','unlike','like'])25print('連接成功,開始爬取數據')26whileTrue:2728xpath1='//*[@id="app"]/div[2]/div[2]/div/div[1]/div/div/div[4]/div/div/ul/li[{}]'.format(i)29try:30target=browser.find_element_by_xpath(xpath1)31except:32print('全部爬完')33break3435author=target.find_element_by_xpath('div[1]/div[2]').text36comment=target.find_element_by_xpath('div[2]/div').text37stars1=target.find_element_by_xpath('div[1]/div[3]/span/i[1]').get_attribute('class')38stars2=target.find_element_by_xpath('div[1]/div[3]/span/i[2]').get_attribute('class')39stars3=target.find_element_by_xpath('div[1]/div[3]/span/i[3]').get_attribute('class')40stars4=target.find_element_by_xpath('div[1]/div[3]/span/i[4]').get_attribute('class')41stars5=target.find_element_by_xpath('div[1]/div[3]/span/i[5]').get_attribute('class')42date=target.find_element_by_xpath('div[1]/div[4]').text43like=target.find_element_by_xpath('div[3]/div[1]').text44unlike=target.find_element_by_xpath('div[3]/div[2]').text454647comments=pd.DataFrame([i,author,comment,stars1,stars2,stars3,stars4,stars5,like,unlike]).T48comments.columns=['id','author','comment','stars1','stars2','stars3','stars4','stars5','unlike','like']49AllArticle=pd.concat([AllArticle,comments],axis=0)50browser.execute_script("arguments[0].scrollIntoView();",target)51i=i+152ifi%100==0:53print('已爬取{}條'.format(i))54AllArticle=AllArticle.reset_index(drop=True)55returnAllArticle5657url='https://www.bilibili.com/bangumi/media/md102392/?from=search&seid=8935536260089373525#short'58result=getComment(url)59#result.to_csv('工作細胞爬蟲.csv',index=False)

這種方法爬取失敗之后,一直不知道該怎么處理,剛好最近看到網上有大神爬貓眼評論的文章,照葫蘆畫瓢嘗試了一下,居然成功了,而且爬的速度也很快,十來分鐘就全爬完了,思路是找到評論對應的 Json 文件,然后獲取 Json 中的數據,過程如下。

在 Google 瀏覽器中按 F12 打開卡發者工具后,選擇 Network

往下滑動,會發現過一段時間,會出現一個 fetch,右鍵打開后發現,里面就是 20 條記錄,有所有我們需要的內容,Json格式。

所以現在需要做的就是去找這些Json文件的路徑的規律。多看幾條之后,就發現了規律:

第一個Json:

https://bangumi.bilibili.com/review/web_api/short/list?media_id=102392&folded=0&page_size=20&sort=0

第二個Json:

https://bangumi.bilibili.com/review/web_api/short/list?media_id=102392&folded=0&page_size=20&sort=0&cursor=76553500953424

第三個Json:

https://bangumi.bilibili.com/review/web_api/short/list?media_id=102392&folded=0&page_size=20&sort=0&cursor=76549205971454

顯然所有的Json路徑的前半部分都是一樣,都是在第一條Json之后加上不同的 cursor = xxxxx,所以只要能找到cursor值的規律,就可以用循環的辦法,爬完所有的Json,這個值看上去沒什么規律,最后發現,每一個Json路徑中 cursor 值就藏在前一個Json的最后一條評論中

在 python 中可以直接把 JSON 轉成字典,cursor 值就是最后一條評論中鍵 cursor 的值,簡直不要太容易。

所以爬的思路就很清晰了,從一個Json開始,爬完 20 條評論后,獲取最后一個評論中的cursor值,更改路徑之后獲取第二個Json,重復上面的過程,直到爬完所有的Json。

至于如何知道爬完了所有Json,也很容易,每個Json中一個total鍵,表示了當前一共有多少條評論,所以只需要寫一個while循環,當爬到的評論數達到total值時停止。

爬的過程中還發現,有些Json中的評論數不夠 20 條,如果每次用 20 去定位,中間會報錯停止,需要注意一下。所以又加了一行代碼,每次獲得Json后,通過 len() 函數得到當前Json中一共包含多少條評論,cursor 在最后一個評論中。

以上是整個爬的思路,我們最終爬到以下信息

需要說明的地方,一個是 liked 按照字面意思應該是用戶的點贊數,但爬完才發現全是 0,沒有用。另一個是關于時間,里面有 ctime 和 mtime 兩個跟時間有關的值,看了幾個,基本都是一樣的,有個別不太一樣,差的不多,就只取了 ctime,我猜可能一個是點擊進去的時間,一個是評論提交時間,但沒法驗證,就隨便取一個算了,ctime 的編碼很奇怪,比如某一個是 ctime = 1540001677,渣渣之前沒有見過這種編碼方式,請教了大佬之后知道,這個是Linux系統上的時間表示方式,是1970 年 1 月 1 日 0 時 0 分 0 秒到當時時點的秒數,python 中可以直接用 time.gmtime() 函數轉化成年月日小時分鐘秒的格式。還有 last_ep_index 里面存的是用戶當前的看劇狀態,比如看至第 13 話,第 6 話之類的,但后來發現很不準,絕大多數用戶沒有 last_ep_index 值,所以也沒有分析這個變量。

代碼如下:

1importrequests 2fromfake_useragentimportUserAgent 3importjson 4importpandasaspd 5importtime 6importdatetime 7headers={"User-Agent":UserAgent(verify_ssl=False).random} 8comment_api='https://bangumi.bilibili.com/review/web_api/short/list?media_id=102392&folded=0&page_size=20&sort=0' 910#發送get請求11response_comment=requests.get(comment_api,headers=headers)12json_comment=response_comment.text13json_comment=json.loads(json_comment)1415total=json_comment['result']['total']1617cols=['author','score','disliked','likes','liked','ctime','score','content','last_ep_index','cursor']18dataall=pd.DataFrame(index=range(total),columns=cols)192021j=022whilej

三、影評分析

最終一共爬到了 17398 條影評數據。里面的 date 是用 ctime 轉過來的,接下來對數據進行一些分析,數據分析通過 python3.6 完成。

評分分布

評分取值范圍為2、4、6、8、10分,對應1-5顆星

可以看出,幾乎所有的用戶都給了這部動漫五星好評,影響力可見一斑。

評分時間分布

將這部動漫從上線至今所有的評分按日進行平均,觀察評分隨時間的變化情況

可以看出,評分一直居高不下,尤其起始和結束時都接近滿分,足見這是一部良好開端、圓滿結束的良心作品。

每日評論數

看完評分之后,再看看評論相關的數據,我最感興趣的是,這些評論的時間分布是怎么樣的,統計了每一日的評論數之后,得到了評論數的分布圖

基本上是每出了新的一話,大家看完后就會在短評中分享自己的感受,當然同樣是起始和結束階段的評論數最多,對比同期的百度指數

評論日內分布

除了每日的評論數,也想分析一下評論的日內趨勢,用戶都喜歡在每日的什么時間進行評論?將評論分 24 個小時求和匯總后,得到了下圖

不過這個結果就不是很理想了,橫軸是時間,縱軸是評論數,中午到下午的趨勢上升可以理解,晚上七八點沒有人評論反倒是凌晨三四點評論數最多,這個就很反常了,可能是評論在系統中上線的時間有一定偏差?

好評字數

此外還想分析一下,是否點贊數多的,一定是寫的字數越多的?因為文章中大部分的評論是沒有點贊的,所以這里中統計了有點贊(likes>0)的評論點贊數和評論字數的數據。由于有一條評論字點贊數太多,嚴重偏離整體趨勢,所以做了對數圖進行觀察。

整體來看,似乎沒什么關系,大量字數 1-100 不等的,點贊數都為 1,點贊數大于 5 的部分有一定的正相關性,說明評論不僅要看數量,還要看質量,寫出了大家的心聲,大家才會使勁點贊。

評論分析 TF-IDF

分析完基礎數據后,想更深入挖掘一下評論信息,大家都說了些什么?為什么這部劇這么受歡迎?也許都能在評論中找到答案。

jieba 分詞、去除停止詞、計算詞頻和 TF-IDF 的過程不表,與之前兩篇文章類似。我們提取了重要性前 500 的詞,這里展示部分

血小板高居首位,畢竟大家對萌萌噠事物都是沒什么抵抗力的。

詞語中也存在一些意義不大的詞,前期處理不太到位。不過從這些詞云中還是可以看出很多東西,為什么這部劇如此受歡迎?這里通過分詞可以得到以下三個解釋:

1. 題材好:科普類動漫,老少皆宜

評論中提到了科普、生物、題材等詞,還有各種細胞。區別于一般科普向動漫受眾低幼的問題,這部番的受眾年齡比較廣泛。因為所涉及到的知識并不算過于常識。動漫中,每一話,身體的主人都會生一場病,每次出現新的細胞和病毒出現時,都會對他們的身份有比較詳細和準確的介紹

這種形式寓教于樂,同時戰斗的過程也充分地體現了每種細胞的特性。例如,前期因為戰斗力弱而被別的細胞瞧不起的嗜酸性粒細胞,在遇到寄生蟲的時候大放異彩。可以說,每一種細胞爆種都爆得都有理有據。

2. 人設好

這部番把幾乎人體所有的細胞擬人化:紅細胞、白細胞、血小板、巨噬細胞等。每一種細胞都有比較獨特的設定,從御姐到蘿莉,從高冷到話癆。十幾個出場的主要人物都各自有立得住的萌點。滿足各種口味的需求。

3. 制作精良

這一點是毋庸置疑的,好的人設好的題材,如果沒有好的制作,都是白談,評論中也有很多人提到了“聲優”、“配音”等。

當然一部劇能夠火,不僅僅是這么簡單的原因,這里所說的,只是從數據可以看出的,觀眾的直觀感受。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 數據
    +關注

    關注

    8

    文章

    7085

    瀏覽量

    89215
  • 函數
    +關注

    關注

    3

    文章

    4338

    瀏覽量

    62762
  • 爬蟲
    +關注

    關注

    0

    文章

    82

    瀏覽量

    6938

原文標題:用Python分析《工作細胞》的一萬多條評論后,非漫迷也要入番了

文章出處:【微信號:rgznai100,微信公眾號:rgznai100】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    鋰電車載式UPS產品受歡迎的原因

      鋰電車載式UPS產品為何如此受歡迎?鋰電池加車載式UPS無疑是最完美的搭檔了,現在許多改裝車、特種車輛、通信指揮車上都用上了鋰電車載式UPS,保證了電源不間斷的穩定輸出性,使工作能正常的進行
    發表于 10-09 14:23

    采用xpath網站內容

    xpathmooc網課程
    發表于 04-11 12:01

    python音頻文件的步驟

    python爬蟲音頻文件
    發表于 08-22 14:23

    Python豆瓣電影信息和存儲數據

    Python——豆瓣電影信息并存儲數據
    發表于 03-11 11:19

    豆瓣電影Top250信息

    通過本案例[豆瓣電影Top250信息]鍛煉除正則表達式之外兩種信息解析方式:Xpath和PyQuery。url地址:https://movie.douban.com/top25
    發表于 03-23 15:47

    CS4271官方數據說明

    CS4271官方數據說明,需要的可以拿去。
    發表于 12-18 14:06 ?1次下載

    BLE低功耗藍牙模塊為何如此受歡迎

    BLE低功耗藍牙模塊為何如此受歡迎? BLE 低功耗藍牙模塊一般是指藍牙4.0模塊,BLE 低功耗藍牙模塊催生了眾多智能硬件,這得益于BLE 低功耗技術,BLE技術為何如此受歡迎
    發表于 12-01 15:11 ?18次下載

    Python CSDN的極客頭條

    Python 如何CSDN的極客頭條呢?
    的頭像 發表于 03-21 14:58 ?4852次閱讀
    Python <b class='flag-5'>爬</b><b class='flag-5'>取</b>CSDN的極客頭條

    iOS 12的裝機率已達到88%,是什么讓iOS 12如此受歡迎

    8月12日,蘋果在開發者網站公布了一項全新數據,iOS 12的裝機率已達到88%。對比去年同期的iOS 11 85%的裝機率,iOS 12已經成為歷年最受歡迎、裝機率最高的iOS系統。是什么讓iOS 12如此
    的頭像 發表于 08-12 16:21 ?2567次閱讀

    SDEV-B系列動力鋰離子電池系統的數據說明

    本文檔的主要內容詳細介紹的是SDEV-B系列動力鋰離子電池系統的數據說明
    發表于 04-27 08:00 ?0次下載
    SDEV-<b class='flag-5'>B</b>系列動力鋰離子電池系統的<b class='flag-5'>數據說明</b>

    淺談:耐彎曲電纜為何如此受歡迎

    受歡迎?在多變的自然環境中它又有哪些優良特性獲得了如此多的青睞?上海淇玥高溫線纜小編今天就來跟你說說耐彎曲電纜的優點。 1.抗拉性 耐彎曲電纜具有較好的抗拉性,它最外面的護套是由高品質PVC混合材料制作而成,還有多股
    發表于 05-11 14:32 ?1850次閱讀

    如何用python抖音app數據

    記錄一下如何用pythonapp數據,本文以抖音視頻app為例。
    的頭像 發表于 03-16 09:07 ?5365次閱讀

    阿爾法機器狗如此受歡迎的魅力是什么

    跟大家拜年。 機器狗的量產銷售一直是個大問題,但阿爾法機器狗C系列的預購量確實非常可觀。那么阿爾法機器狗如此受歡迎的魅力是什么? 圖源:阿爾法官網 運動控制能力 MAX 阿爾法機器狗具有出色的運動控制能力,而這種出色的能力
    發表于 03-23 16:50 ?1558次閱讀
    阿爾法機器狗<b class='flag-5'>如此</b><b class='flag-5'>受歡迎</b>的魅力是什么

    為什么8.6代線TFT工廠如此受歡迎

    為什么8.6代線TFT工廠如此受歡迎,尤其是在中國?為什么新的面板廠商不直接采用已經存在多年的玻璃基板尺寸建立傳統的8.5代線工廠?從8.5代線到8.6代線的演變是否有具體原因?這是許多設備商跟面板廠商探討的主題。
    的頭像 發表于 05-05 14:32 ?3454次閱讀

    Scrapy怎么Python文件

    我們介紹了Scrapy框架運行基本原理,緊接著我們介紹了如何利用Scrapy文本數據
    的頭像 發表于 02-24 15:16 ?612次閱讀
    Scrapy怎么<b class='flag-5'>爬</b><b class='flag-5'>取</b>Python文件
    主站蜘蛛池模板: 黄色小说在线| 亚洲精品在线看| caoporn 免费视频| 无码不卡中文字幕在线观看| 久久精品国产色蜜蜜麻豆国语版| 青青伊人精品| 国产人妻麻豆蜜桃色在线| 综合久久久久久久综合网| 手机在线观看毛片| 久久精品一卡二卡三卡四卡视频版| 伊人天天躁夜夜躁狠狠| 日本无码色哟哟婷婷最新网站| 成人片免费看| 野花韩国免费高清电影| 日本理论片午午伦夜理片2021| 国产成人精品电影| 午夜福利试看120秒体验区| 噜噜噜狠狠夜夜躁精品| BL全肉多攻NP高H| 日韩 亚洲 欧美 中文 高清| 久久99精国产一区二区三区四区| 91桃色污无限免费看| 亚洲大码熟女在线| 日本无卡无吗在线| 蜜芽丅v新网站在线观看| 狠狠色丁香久久婷婷综合_中| 中文在线观看永久免费| 午夜亚洲精品不卡在线| 秋霞在线看片无码免费| 国产精品无码无卡毛片不卡视| 一本大道无码AV天堂欧美| 辣文肉高h粗暴| 国产又粗又黄又爽的大片| 大桥未久电影在线观看| av老司机色爱区综合| 中文字幕日本久久2019 | 视频成人永久免费看| 免费三级现频在线观看| 久久夜色撩人精品国产| 国产高清在线a视频大全| 成在线人免费视频|