BiliUtil
声明:该内容仅供学习参考,请勿用于商业目的
帮助信息请看到第三章,更新日志请看到第四章
一、安装方式
请使用pip安装该包:pip install BiliUtil
若使用视频下载功能,请自行安装配置aria2。
若使用视频合并功能,请自行安装配置ffmpeg。
工具包将自动检查aria2和ffmpeg环境,若任一环境不存在,所涉及的类与函数将不会被引入
二、使用方式
包中封装了始终对象,“UP主”(User)、“频道”(Channel)、“专辑”(Album)和“视频”(User),前三个对象是可以声明的,但是“视频”对象(Video)不可独立声明。
1、用户类(User)
该类表示了一个UP主,当需要获取某位UP主信息或UP的视频时,可以选择创建该类的实例。
1.1、成员变量
成员变量
变量含义
默认值
cookie
设置的cookie信息
None
uid
用户uid
None
name
用户昵称
None
birthday
用户生日
None
coin
用户硬币量
None
face
用户头像
None
time
创号时间(可能为0)
None
level
用户级别
None
sex
用户昵称
None
sign
用户签名
None
album_list
用户视频对象列表
list()
channel_list
用户频道对象列表
list()
1.2、声明实例
你可以引入包并创建一个空的用户实例,空的用户实例不设置用户uid。
import BiliUtil
if __name__ == '__main__':
ua = BiliUtil.User()
1.3、设定用户uid
你可以通过多种方式设定用户uid,详见下方案例。
import BiliUtil
if __name__ == '__main__':
# 方案一
ua = BiliUtil.User(uid='4093899')
# 方案二
ua = BiliUtil.User()
ua.set_user(uid='4093899')
# 方案三
ua = BiliUtil.User()
ua.set_by_url(url='https://space.bilibili.com/4093899')
三种函数声明方式如下:
def __init__(self, uid=None)
def set_user(self, uid)
def set_by_url(self, url)
注:使用URL设定用户时,类似于https://space.bilibili.com/4093899/channel/index的URL也可以被识别。
1.4、设定Cookie
设定的cookie信息会影响到该实例及其包含的所有自动创建的对象。
ua.set_cookie('SESSDATA=abcd68fd%2C1123761144%2C38d97xyz')
注:cookie设置的方式与意义详见第三章的解释。
1.5、获取用户信息
在设定用户uid信息后,即可通过该函数获取用户的基础信息。
import BiliUtil
if __name__ == '__main__':
ua = BiliUtil.User(uid='4093899')
ua.get_user_info()
1.6、获取所有视频列表
你可以仅获取视频列表而不下载视频,该操作将自动帮你完成用户信息的获取。
import BiliUtil
if __name__ == '__main__':
ua = BiliUtil.User(uid='4093899')
ua.get_all_video_info()
1.7、获取所有视频数据
你可以直接下载UP主的全部视频,该操作将自动帮你完成用户信息的获取与视频列表的获取。该操作支持设定路径、命名方式、视频时长,当设置了适合的cookie时,下载的画质将会自动提升。
import BiliUtil
if __name__ == '__main__':
ua = BiliUtil.User(uid&