日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

他爬取了B站所有番剧信息,发现了这些……

發布時間:2024/4/14 编程问答 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 他爬取了B站所有番剧信息,发现了这些…… 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.


本文來自「樓+ 之數據分析與挖掘實戰 」第 4 期學員 —— Yueyec 的作業。他爬取了B站上所有的番劇信息,發現了很多有趣的數據~

關鍵信息:最高播放量 / 最強up主 / 用戶追番數據 / 云追番?

起源

「數據分析」從「數據挖掘」開始,Yueyec 同學選擇了 BeautifulSoup 來爬取B站的番劇信息。部分代碼如下:

# 導入對應的 package import numpy as np import pandas as pd import requests import bs4 import time import json import matplotlib import matplotlib.pyplot as plt %matplotlib inline font_hei = matplotlib.font_manager.FontProperties(fname=r"SimHei.ttf", size=15) # 設置中文字體 def get_data(base_url, page):"""獲取B站單個頁面的視頻信息base_url: json的apipage: 頁數return 一個二維的list,16列"""url = base_url.format(str(page)) # 得到對應的urlresponse = requests.get(url, headers=header) # 發出請求,獲取回應videos = pd.read_json(response.text[37:-1]).iloc[:, 3].iloc[0] # 獲取列表videos_list = [] # 用來儲存數據for video in videos: # 循環每個番劇video_inf = [] # 用來儲存每個番劇的信息video_inf.append(video['stat']['aid']) # av號video_inf.append(video["title"]) # 標題video_inf.append(video['owner']["name"]) # 上傳者video_inf.append(time.ctime(video['pubdate'])) # 上傳時間video_inf.append(video['stat']['view']) # 觀看人數video_inf.append(video['stat']['danmaku']) # 彈幕數video_inf.append(video['stat']['reply']) # 評論數量video_inf.append(video['stat']['favorite']) # 收藏數量video_inf.append(video['stat']['coin']) # 投幣數video_inf.append(video['stat']['share']) # 分享數video_inf.append(video['stat']['like']) # 點喜歡的人數video_inf.append(video['stat']['dislike']) # 點不喜歡的人數video_inf.append(video['stat']["now_rank"]) # 排名video_inf.append(video['stat']["his_rank"]) # 排名video_inf.append(video['tname']) # 標簽video_inf.append(video['desc']) # 描述videos_list.append(video_inf)return videos_list

完整的代碼可在文末查看。

數據清洗

數據分析前,我們要對數據進行清洗。

爬取數據后,發現有些視頻的播放次數為-1,可能是由于版權、封號等問題下架的視頻,大約有1000多個。

data[-1 == data['觀看次數']]


清洗掉這些臟數據,清洗完成后,就可以分析拿到手的數據了。

data.drop(data[-1 == data['觀看次數']].index, inplace=True)

**

最勤勞的up主

**

開始數據分析環節,我們先來看看誰是最勤勞的up主,他貢獻了全站四分之一的番劇,猜猜他是誰?

# 查看up主投稿的數量 data.groupby("up主").count().sort_values("av號", ascending=False) # 根據up主投稿的數量排序

統計發現:大致四分之一是 嗶哩嗶哩官方 發布的,排第二的則為「小清水亜美」,搬運了3218 集的番劇,第三位為 東京電視臺。

**

收藏量和播放量最高的番劇

**

收藏量和播放量最高的番劇都是哪部?結果可能會大大出于意料……

data.sort_values("收藏", ascending=False).reset_index(drop=True) # 收藏數量排序

統計發現,收藏的番劇中,很多都是劇場版,可能是相對于TV版,劇場版制作更精良的緣故。在具體排序中,排第五的居然是本月10號上傳的番劇,這點很意外。


播放量最高的番劇又是哪個呢 :

data.sort_values("觀看次數", ascending=False).reset_index(drop=True)

分析結果:

  • 排名最高的「工作細胞」的播放量幾乎達到了4000千萬,遠超第二部。

  • 前五名中,「Overlord」出現了三次,果然是公認的B站霸權的番劇。

  • 排名靠前的幾部,都是番劇的第一集。

  • XX云番劇?

    根據用戶喜好,智能推薦音樂的應用我們都見過很多,但智能推薦番劇的好像挺少,能不能基于用戶數據,做一個推薦番劇的系統呢?

    Yueyec 同學進行了實驗:

    “另外爬取了用戶的追番信息來做關聯分析,可以查看到哪些番劇是關聯比較大的。”

    “數據太大,只爬取了一小部分,提供的數據為 ID號為 1 到 20000 號的用戶追番數據(對應為bangumi1, bangumi2),實際爬取和處理的為 1 到450000 號的用戶。”

    一系列操作之后,他得出了這些數據:

    可以看到,其中很多是同一個番劇,只是季數不同。但不少番劇之間也與很高的置信度,我覺得可以用此得到一個簡單的推薦算法。”

    **

    中肯的總結和建議

    **

  • 通過這次6周的學習,補充了不少知識,加深了 Pandas 的使用,也了解了時間序列、自然語言等的處理方法。

  • 雖然時間不長,但是對整個過程都有所了解,為將來學習機器學習建立了基石。

  • 部分挑戰太簡單,建議把挑戰換成從頭到尾自己實現模型,更能加深印象和具有挑戰難度。

  • 第五周的內容展現了不同類型的分析模板,加強了見識也提供了很多擴展的內容。因為并沒有完全看完,所以接下來會花部分時間來學習這部分。

    除了 Yueyec 同學,還有很多優秀的同學的作品:

    這些作品的代碼,你可以在瀏覽器中輸入這個鏈接來查閱。
    優秀作品代碼

  • 如果你也想像這位同學一樣,系統地學習數據挖掘和數據分析技能,可以了解一下《數據分析與挖掘實戰》這門課程,目前已經開到第六期,一線大牛授課,帶你在6周內成長為有真實工作能力的數據科學工程師。



    現在掃碼添加小姐姐微信咨詢/報名,還可領取:

    100元優惠券 + 數據分析與挖掘學習腦圖!

    快來吧
    我在實驗樓等你。

    總結

    以上是生活随笔為你收集整理的他爬取了B站所有番剧信息,发现了这些……的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。