对华农兄弟b站视频播放量,弹幕数,评论数进行排序

首先需要使用之前抓取的数据

首先读取文件,由于只需要标题,弹幕数,播放量和评论数,而且要找到标题和弹幕数、播放量、评论数排名的对应关系,所以新建字典,以标题作为key,播放量为value(以播放量为例,其他两个也是以标题作为key值)。

import csv

play_dict = {}
comment_dict = {}
rcount_dict = {}
new_play_top_list = []
new_comment_top_list = []
new_rcount_top_list = []

#读取文件
with open('video.csv','r',encoding="utf-8") as file:
    reader = csv.reader(file)
    #只需要标题,弹幕数,播放量,评论数
    for row in reader:
        #print("title:",row[1])
        #赋值,play_dict,comment_dict,rcount_dict都是字典
        play_dict[row[1]] = int(row[3])
        comment_dict[row[1]] = int(row[4])
        rcount_dict[row[1]] = int(row[5])

此时获取了key和value的对应,所以需要根据value值对应排序

new_play_top_list = sorted(play_dict.items(),key = lambda kv:(kv[1], kv[0]),reverse = True)
new_comment_top_list = sorted(comment_dict.items(),key = lambda kv:(kv[1], kv[0]),reverse = True)
new_rcount_top_list = sorted(rcount_dict.items(),key = lambda kv:(kv[1], kv[0]),reverse = True)

print("播放量Top10")
print(new_play_top_list[0:10])
print("评论数Top10")
print(new_comment_top_list[0:10])
print("弹幕数Top10")
print(new_rcount_top_list[0:10])

输出为

全部代码

import csv

play_dict = {}
comment_dict = {}
rcount_dict = {}
new_play_top_list = []
new_comment_top_list = []
new_rcount_top_list = []


with open('video.csv','r',encoding="utf-8") as file:
    reader = csv.reader(file)
    
    for row in reader:
        #print("title:",row[1])
        play_dict[row[1]] = int(row[3])
        comment_dict[row[1]] = int(row[4])
        rcount_dict[row[1]] = int(row[5])
    
new_play_top_list = sorted(play_dict.items(),key = lambda kv:(kv[1], kv[0]),reverse = True)
new_comment_top_list = sorted(comment_dict.items(),key = lambda kv:(kv[1], kv[0]),reverse = True)
new_rcount_top_list = sorted(rcount_dict.items(),key = lambda kv:(kv[1], kv[0]),reverse = True)

print("播放量Top10")
print(new_play_top_list[0:10])
print("评论数Top10")
print(new_comment_top_list[0:10])
print("弹幕数Top10")
print(new_rcount_top_list[0:10])

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值