这篇文章给大家分享的是有关Python如何获取B站粉丝数的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
要使用代码,需要安装Python 3.x,并且要安装库,在cmd输入pip install requests json time
,修改最上方变量改成你自己的UID,保存为xxx.py,运行就可以了
用于学习了解的核心代码:
import requestsimport jsonbilibili_api = requests.get("http://api.bilibili.com/x/relation/stat?vmid=1") # 访问网址,数据存到变量,1是用户UIDextracting_json = bilibili_api.text # 提取bilibili_api的text数据python_dictionary = json.loads(extracting_json) # json对象转换为python字典print(python_dictionary['data']['follower']) # 访问python对象,data里的follower
正篇:
import requestsimport jsonimport time# 需要修改的变量uid = 9824766 # 用户UIDsleep_second = 60 # 多少秒检测一次# 预定义变量 (不能修改)assigned_value = 0 # 旧粉丝数变量是否赋值fans_num_old = 0 # 上一次的粉丝数while True: # 尝试访问链接,如果OSError输出连接失败,并break。 try: bilibili_api = requests.get("http://api.bilibili.com/x/relation/stat?vmid={}".format(uid)) # 访问网址,数据存到变量 except OSError: print('连接失败') break extracting_json = bilibili_api.text # 提取bilibili_api的text数据 python_dictionary = json.loads(extracting_json) # json对象转换为python字典 # 如果发送请求过多,被系统禁止获取数据,则提示并退出程序 try: fans_num = python_dictionary['data']['follower'] # 粉丝数,访问python对象,data里的follower except TypeError: print('请求被拦截,需要更换IP访问') break # 判断旧粉丝数变量,是否被首次赋值 if assigned_value != 1: fans_num_old = fans_num assigned_value = 1 # 判断粉丝数是否变化 if fans_num_old != fans_num: num_change = fans_num - fans_num_old num_charge_to_str = '' # 预定义转换完的”改变多少粉丝数“变量 if num_change > 0: # 变化大于0就转字符串,再添加+号 num_charge_to_str = '+' + str(num_change) else: num_charge_to_str = str(num_change) print('[', time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()), '] B站粉丝数:', fans_num, '(', num_charge_to_str, ')', sep='') fans_num_old = fans_num # 存储新粉丝数 time.sleep(sleep_second) # 每次循环检测等待秒数
感谢各位的阅读!关于“Python如何获取B站粉丝数”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!