Python获取B站粉丝数的示例代码

 更新时间:2021年03月24日 10:44:18   作者:我是内存条  
这篇文章主要介绍了Python获取B站粉丝数的示例代码,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

要使用代码,需要安装Python 3.x,并且要安装库,在cmd输入pip install requests json time
复制代码,修改最上方变量改成你自己的UID,保存为xxx.py,运行就可以了

用于学习了解的核心代码:

import requests
import json

bilibili_api = requests.get("http://api.bilibili.com/x/relation/stat?vmid=1") # 访问网址,数据存到变量,1是用户UID
extracting_json = bilibili_api.text # 提取bilibili_api的text数据
python_dictionary = json.loads(extracting_json) # json对象转换为python字典
print(python_dictionary['data']['follower']) # 访问python对象,data里的follower

正篇:

import requests
import json
import time

# 需要修改的变量
uid = 9824766 # 用户UID
sleep_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站粉丝数的示例代码的文章就介绍到这了,更多相关Python获取B站粉丝数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python 自动化将markdown文件转成html文件的方法

    python 自动化将markdown文件转成html文件的方法

    这篇文章主要介绍了python 自动化将markdown文件转成html文件的方法的相关资料,本文介绍的非常详细,具有参考借鉴价值,需要的朋友可以参考下
    2016-09-09
  • Python基于lxml模块解析html获取页面内所有叶子节点xpath路径功能示例

    Python基于lxml模块解析html获取页面内所有叶子节点xpath路径功能示例

    这篇文章主要介绍了Python基于lxml模块解析html获取页面内所有叶子节点xpath路径功能,结合实例形式较为详细的分析了Python使用lxml模块进行xml节点数据解析的相关操作技巧与注意事项,需要的朋友可以参考下
    2018-05-05
  • Python数据分析之绘图和可视化详解

    Python数据分析之绘图和可视化详解

    信息可视化(也叫绘图)是数据分析中最重要的工作之一.Python有许多库进行静态或动态的数据可视化,但这里主要关注matplotlib和基于它的库,文中有非常详细的介绍,需要的朋友可以参考下
    2021-06-06
  • 四步教你学会打包一个新的Python模块

    四步教你学会打包一个新的Python模块

    当你安装应用程序时,通常是安装一个软件包,其中包含应用程序的可执行代码和重要文件。在 Linux上,软件一般被打包成RPM或DEB等格式,然而几乎每天都有新的Python模块发布,因此你很容易遇到一个尚未打包的Python模块。本文教你四步打包一个新的Python模块
    2022-09-09
  • Python中死锁的形成示例及死锁情况的防止

    Python中死锁的形成示例及死锁情况的防止

    由于Python中允许创建多个线程,那么互斥锁或者线程同时获取多个锁的情况就有可能发生,这里我们就来看一下Python中死锁的形成示例及死锁情况的防止:
    2016-06-06
  • numpy中索引和切片详解

    numpy中索引和切片详解

    这篇文章主要介绍了numpy中索引和切片详解,具有一定借鉴价值,需要的朋友可以参考下。
    2017-12-12
  • Python入门篇之条件、循环

    Python入门篇之条件、循环

    本文的主要内容是 Python 的条件和循环语句以及与它们相关的部分. 我们会深入探讨if, while, for以及与他们相搭配的else,elif,break,continue和pass语句.
    2014-10-10
  • Python+Opencv实现图像模板匹配详解

    Python+Opencv实现图像模板匹配详解

    模板匹配可以看作是对象检测的一种非常基本的形式。使用模板匹配,我们可以使用包含要检测对象的“模板”来检测输入图像中的对象。本文为大家介绍了图像模板匹配的实现方法,需要的可以参考一下
    2022-09-09
  • Python Numpy库的超详细教程

    Python Numpy库的超详细教程

    Numpy库是Python中的一个科学计算库,本文主要介绍了ndarray的基本操作、 ndarray运算等各种Numpy库的超详细教程,需要的朋友可以参考下
    2022-04-04
  • Python格式化输出字符串方法小结【%与format】

    Python格式化输出字符串方法小结【%与format】

    这篇文章主要介绍了Python格式化输出字符串方法,结合实例形式总结分析了使用%与format函数进行字符串格式化操作相关实现技巧与注意事项,需要的朋友可以参考下
    2018-10-10

最新评论