五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

通過Python實現(xiàn)Bilibili用戶追番信息統(tǒng)計(分數(shù)排序、好評率統(tǒng)計)

2021-02-06 23:04 作者:萌萌噠汪帕斯  | 我要投稿

簡介:

使用bilibili_api外部庫,通過輸入用戶的uid從而讀取追番情況,將所追番劇以從高到低的分數(shù)排序展示,評價人數(shù)不足的番劇放至最后。并顯示所追番劇的優(yōu)質(zhì)率(大于等于9.5),良好率(大于等于8)。

作者介紹:

愛偶像大師,愛LoveLive!同時也是一名普通的大學生~~近來正在學習Python等知識。

歡迎關(guān)注我的個人網(wǎng)站:https://www.fyf99170.top

歡迎關(guān)注我的B站賬號:UID 32291160 萌萌噠汪帕斯


功能介紹:

今天在逛GitHub的時候,看到了由Passkou創(chuàng)建的bilibili_api的項目,該項目的介紹為:

這是一個用Python寫的調(diào)用?Bilibili?各種API的庫,范圍涵蓋視頻、音頻、直播、動態(tài)、專欄、用戶、番劇等。你可以使用很簡短的代碼去調(diào)用API,而不需要自己去尋找API,指定各種參數(shù)。

該外部庫的功能非常強大,因此我在該庫基礎(chǔ)上進行了研究。在本文中,我僅使用了該庫的user模塊,使用該模塊,通過輸入用戶的uid從而讀取追番情況,將所追番劇以從高到低的分數(shù)排序展示,評價人數(shù)不足的番劇放至最后。并顯示所追番劇的優(yōu)質(zhì)率(大于等于9.5),良好率(大于等于8)。

代碼節(jié)選如下圖所示,具體代碼見文末:


運行結(jié)果:

以我的賬號uid32291160作為示例進行展示:

從上面三圖可以看出,可以清晰的展示番劇的名稱和評分,分數(shù)由高到低排序。追番數(shù)目、優(yōu)質(zhì)番劇率和良好番劇率也能體現(xiàn)。當然,我們可以觀察其他用戶的追番情況,以uid2,bishi為示例:

注意:僅可以用戶在隱私設(shè)置中打開公開追番列表才能夠獲取到信息,我們輸入uid1發(fā)現(xiàn)無法讀取相應(yīng)信息。

可執(zhí)行文件下載(exe):

鏈接:https://pan.baidu.com/s/1wwbCnBOnJ6xkxkyWJjEjDA?

提取碼:wyjf?

解壓后打開exe文件即可使用。

代碼展示:

from bilibili_api import user ?# 調(diào)用bilibili_api


def take_second(elem):
? ?"""強制對第二個元素排序"""
? ?return elem[1]


def video_load(uid):
? ?"""用戶視頻信息讀取"""
? ?total = 0
? ?vivid_num = 0
? ?videos = []
? ?score_video_list = []
? ?no_score_video_list = []
? ?user_generator = user.get_bangumi_g(uid)
? ?for video in user_generator:
? ? ? ?videos.append(video)
? ?for bangumi in videos:
? ? ? ?title = bangumi["title"]
? ? ? ?score_pre = bangumi.get("rating", "無效")
? ? ? ?total += 1
? ? ? ?if score_pre != "無效":
? ? ? ? ? ?score = score_pre["score"]
? ? ? ? ? ?vivid_num += 1
? ? ? ? ? ?score_video_list.append((title, float(score)))
? ? ? ?else:
? ? ? ? ? ?no_score_video_list.append((title, "暫無評分"))
? ?return total, vivid_num, score_video_list, no_score_video_list


def score_soft(score_list):
? ?"""按照分數(shù)對番劇排序"""
? ?score_list.sort(key=take_second, reverse=True)
? ?return score_list


def percent_determine(score_list, no_score_list):
? ?"""優(yōu)質(zhì)率確定"""
? ?perfect_num = 0
? ?good_num = 0
? ?bad_num = 0
? ?for i in score_list:
? ? ? ?print(i[0], ":", i[1])
? ? ? ?if i[1] >= 9.5:
? ? ? ? ? ?perfect_num += 1
? ? ? ?elif 8 <= i[1] < 9.5:
? ? ? ? ? ?good_num += 1
? ? ? ?else:
? ? ? ? ? ?bad_num += 1
? ?for i in no_score_list:
? ? ? ?print(i[0], ":", i[1])
? ?return perfect_num, good_num


def main():
? ?try:
? ? ? ?uid = int(input("請輸入uid:"))
? ? ? ?total, vivid_num, score_video_list, no_score_video_list = video_load(uid)
? ? ? ?score_video_list = score_soft(score_video_list)
? ? ? ?perfect_num, good_num = percent_determine(score_video_list, no_score_video_list)
? ? ? ?print("\n用戶uid:", uid, "的追番情況如下:")
? ? ? ?print("共追番劇數(shù):", total, "有評分番劇數(shù):", vivid_num)
? ? ? ?print("優(yōu)質(zhì)番劇率:", round((perfect_num / vivid_num) * 100, 2), "%")
? ? ? ?print("良好番劇率:", round(((good_num + perfect_num) / vivid_num) * 100, 2), "%")
? ?except Exception as m:
? ? ? ?print(m)
? ?input("按下enter以結(jié)束程序")


main()

結(jié)語/致謝:

本項目使用了外部庫bilibili_api,作者為Passkou,對此表示感謝。該外部庫GitHub鏈接為https://github.com/Passkou/bilibili_api。


通過Python實現(xiàn)Bilibili用戶追番信息統(tǒng)計(分數(shù)排序、好評率統(tǒng)計)的評論 (共 條)

分享到微博請遵守國家法律
当涂县| 高密市| 漳浦县| 彩票| 崇文区| 桂东县| 昌黎县| 遂川县| 荔浦县| 临泽县| 外汇| 冷水江市| 武宣县| 青海省| 平乡县| 额济纳旗| 阜新市| 镇江市| 积石山| 潞西市| 和政县| 波密县| 康乐县| 民和| 仁怀市| 积石山| 万源市| 繁峙县| 宜良县| 青田县| 禹城市| 河西区| 潮安县| 陈巴尔虎旗| 新宾| 哈巴河县| 奉节县| 阿拉善盟| 满城县| 泾阳县| 阳信县|