Skip to content

Commit

Permalink
Merge pull request #347 from z0z0r4/dev
Browse files Browse the repository at this point in the history
v15.5.0
  • Loading branch information
z0z0r4 authored Jun 18, 2023
2 parents a0368fe + 0fbba1e commit da8f891
Show file tree
Hide file tree
Showing 7 changed files with 96 additions and 2 deletions.
8 changes: 8 additions & 0 deletions CHANGELOGS/v15.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
# 15.5.0 2023/6/18

- feat: 新增 Api 信息类等 by @Drelf2018 in https://github.com/Nemo2011/bilibili-api/pull/320
- feat: Credential刷新 by @z0z0r4 in https://github.com/Nemo2011/bilibili-api/pull/321
- feat: user.get_subscribed_bangumi 添加更多参数 by @z0z0r4 in https://github.com/Nemo2011/bilibili-api/pull/333
- feat: 新增函数 user.get_elec_user_monthly by @z0z0r4 in https://github.com/Nemo2011/bilibili-api/pull/343
- 【破坏修改】fix: credential cookie 值为空字符串时视为无该值 by @z0z0r4 in https://github.com/Nemo2011/bilibili-api/pull/345

# 15.4.4 2023/5/27

- fix: 优化 wbi 验证结构 by @Drelf2018 in https://github.com/Nemo2011/bilibili-api/pull/297
Expand Down
2 changes: 1 addition & 1 deletion bilibili_api/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@
from .utils.short import get_real_url
from .utils.sync import sync

BILIBILI_API_VERSION = "15.4.4"
BILIBILI_API_VERSION = "15.5.0"

# 如果系统为 Windows,则修改默认策略,以解决代理报错问题
if "windows" in platform.system().lower():
Expand Down
4 changes: 4 additions & 0 deletions bilibili_api/utils/danmaku.py
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ def __init__(
is_sub: bool = False,
pool: int = 0,
attr: int = -1,
uid: int = -1,
):
"""
Args:
Expand Down Expand Up @@ -88,6 +89,8 @@ def __init__(
(self.)attr (int, optional) : 暂不清楚。 Defaults to -1.
(self.)uid (int, optional) : 弹幕发送者 UID。Defaults to -1.
大会员专属颜色文字填充:http://i0.hdslb.com/bfs/dm/9dcd329e617035b45d2041ac889c49cb5edd3e44.png
大会员专属颜色背景填充:http://i0.hdslb.com/bfs/dm/ba8e32ae03a0a3f70f4e51975a965a9ddce39d50.png
Expand All @@ -108,6 +111,7 @@ def __init__(
self.is_sub = is_sub
self.pool = pool
self.attr = attr
self.uid = uid

def __str__(self):
ret = "%s, %s, %s" % (self.send_time, self.dm_time, self.text)
Expand Down
61 changes: 61 additions & 0 deletions bilibili_api/video.py
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,9 @@ def __init__(
"""
Args:
bvid (str | None, optional) : BV 号. bvid 和 aid 必须提供其中之一。
aid (int | None, optional) : AV 号. bvid 和 aid 必须提供其中之一。
credential (Credential | None, optional): Credential 类. Defaults to None.
"""
# ID 检查
Expand Down Expand Up @@ -247,6 +249,7 @@ async def get_tags(
Args:
page_index (int | None): 分 P 序号. Defaults to 0.
cid (int | None): 分 P 编码. Defaults to None.
Returns:
Expand Down Expand Up @@ -319,7 +322,9 @@ async def get_video_snapshot(
Args:
cid(int): 分 P CID(可选)
json_index(bool): json 数组截取时间表 True 为需要,False 不需要
pvideo(bool): 是否只获取预览
Returns:
Expand Down Expand Up @@ -364,7 +369,9 @@ async def get_download_url(
Args:
page_index (int | None, optional) : 分 P 号,从 0 开始。Defaults to None
cid (int | None, optional) : 分 P 的 ID。Defaults to None
html5 (bool, optional): 是否以 html5 平台访问,这样子能直接在网页中播放,但是链接少。
Returns:
Expand Down Expand Up @@ -488,6 +495,7 @@ async def get_public_notes_list(self, pn: int, ps: int) -> dict:
Args:
pn (int): 页码
ps (int): 每页项数
Returns:
Expand All @@ -506,6 +514,7 @@ async def get_danmaku_view(
Args:
page_index (int, optional): 分 P 号,从 0 开始。Defaults to None
cid (int, optional): 分 P 的 ID。Defaults to None
Returns:
Expand Down Expand Up @@ -723,7 +732,9 @@ async def get_danmakus(
Args:
page_index (int, optional): 分 P 号,从 0 开始。Defaults to None
date (datetime.Date | None, optional): 指定日期后为获取历史弹幕,精确到年月日。Defaults to None.
cid (int | None, optional): 分 P 的 ID。Defaults to None
Returns:
Expand Down Expand Up @@ -864,6 +875,7 @@ async def get_special_dms(
Args:
page_index (int, optional) : 分 P 号. Defaults to 0.
cid (int | None, optional): 分 P id. Defaults to None.
Returns:
Expand Down Expand Up @@ -928,7 +940,9 @@ async def get_history_danmaku_index(
Args:
page_index (int | None, optional): 分 P 号,从 0 开始。Defaults to None
date (datetime.date | None): 精确到年月. Defaults to None。
cid (int | None, optional): 分 P 的 ID。Defaults to None
Returns:
Expand Down Expand Up @@ -962,7 +976,9 @@ async def has_liked_danmakus(
Args:
page_index (int | None, optional): 分 P 号,从 0 开始。Defaults to None
ids (List[int] | None): 要查询的弹幕 ID 列表。
cid (int | None, optional): 分 P 的 ID。Defaults to None
Returns:
Expand Down Expand Up @@ -996,7 +1012,9 @@ async def send_danmaku(
Args:
page_index (int | None, optional): 分 P 号,从 0 开始。Defaults to None
danmaku (Danmaku | None) : Danmaku 类。
cid (int | None, optional): 分 P 的 ID。Defaults to None
Returns:
Expand Down Expand Up @@ -1046,6 +1064,7 @@ async def get_danmaku_xml(
Args:
page_index (int, optional) : 分 P 序号. Defaults to 0.
cid (int | None, optional): cid. Defaults to None.
Return:
Expand Down Expand Up @@ -1077,8 +1096,11 @@ async def like_danmaku(
Args:
page_index (int | None, optional) : 分 P 号,从 0 开始。Defaults to None
dmid (int | None) : 弹幕 ID。
status (bool | None, optional): 点赞状态。Defaults to True
cid (int | None, optional) : 分 P 的 ID。Defaults to None
Returns:
Expand Down Expand Up @@ -1120,8 +1142,11 @@ async def operate_danmaku(
Args:
page_index (int | None, optional) : 分 P 号,从 0 开始。Defaults to None
dmids (List[int] | None) : 弹幕 ID 列表。
cid (int | None, optional) : 分 P 的 ID。Defaults to None
type_ (DanmakuOperatorType | None): 操作类型
Returns:
Expand Down Expand Up @@ -1181,6 +1206,7 @@ async def pay_coin(self, num: int = 1, like: bool = False) -> dict:
Args:
num (int, optional) : 硬币数量,为 1 ~ 2 个。Defaults to 1.
like (bool, optional): 是否同时点赞。Defaults to False.
Returns:
Expand Down Expand Up @@ -1259,6 +1285,7 @@ async def appeal(self, reason: Any, detail: str):
Args:
reason (Any): 投诉类型。传入 VideoAppealReasonType 中的项目即可。
detail (str): 详情信息。
Returns:
Expand All @@ -1282,6 +1309,7 @@ async def set_favorite(
Args:
add_media_ids (List[int], optional): 要添加到的收藏夹 ID. Defaults to [].
del_media_ids (List[int], optional): 要移出的收藏夹 ID. Defaults to [].
Returns:
Expand Down Expand Up @@ -1332,6 +1360,7 @@ async def get_player_info(
Args:
cid (int | None): 分 P ID,从视频信息中获取
epid (int | None): 番剧分集 ID,从番剧信息中获取
Returns:
Expand Down Expand Up @@ -1385,10 +1414,15 @@ async def submit_subtitle(
Args:
lan (str) : 字幕语言代码,参考 http://www.lingoes.cn/zh/translator/langcode.htm
data (dict) : 字幕数据
submit (bool) : 是否提交,不提交为草稿
sign (bool) : 是否署名
page_index (int | None, optional): 分 P 索引. Defaults to None.
cid (int | None, optional): 分 P id. Defaults to None.
Returns:
Expand Down Expand Up @@ -1446,7 +1480,9 @@ async def recall_danmaku(
Args:
page_index(int | None, optional): 分 P 号
dmid(int) : 弹幕 id
cid(int | None, optional) : 分 P 编码
Returns:
调用 API 返回的结果
Expand Down Expand Up @@ -1475,6 +1511,7 @@ async def get_pbp(
Args:
page_index(int | None): 分 P 号
cid(int | None) : 分 P 编码
Returns:
Expand Down Expand Up @@ -1595,9 +1632,13 @@ def __init__(
"""
Args:
bvid (str | None, optional) : BVID. Defaults to None.
aid (int | None, optional) : AID. Defaults to None.
page_index (int, optional) : 分 P 序号. Defaults to 0.
credential (Credential | None, optional): Credential 类. Defaults to None.
debug (bool, optional) : 调试模式,将输出更详细信息. Defaults to False.
"""
super().__init__()
Expand Down Expand Up @@ -2092,15 +2133,25 @@ def detect(
**以下参数仅能在音视频流分离的情况下产生作用,flv / mp4 试看流 / html5 mp4 流下以下参数均没有作用**
video_max_quality (VideoQuality, optional) : 设置提取的视频流清晰度最大值,设置此参数绝对不会禁止 HDR/杜比. Defaults to VideoQuality._8K.
audio_max_quality (AudioQuality, optional) : 设置提取的音频流清晰度最大值. 设置此参数绝对不会禁止 Hi-Res/杜比. Defaults to AudioQuality._192K.
video_min_quality (VideoQuality, optional) : 设置提取的视频流清晰度最小值,设置此参数绝对不会禁止 HDR/杜比. Defaults to VideoQuality._360P.
audio_min_quality (AudioQuality, optional) : 设置提取的音频流清晰度最小值. 设置此参数绝对不会禁止 Hi-Res/杜比. Defaults to AudioQuality._64K.
video_accepted_qualities(List[VideoQuality], optional): 设置允许的所有视频流清晰度. Defaults to ALL.
audio_accepted_qualities(List[AudioQuality], optional): 设置允许的所有音频清晰度. Defaults to ALL.
codecs (List[VideoCodecs], optional) : 设置所有允许提取出来的视频编码. 此项不会忽略 HDR/杜比. Defaults to ALL codecs.
no_dolby_video (bool, optional) : 是否禁止提取杜比视界视频流. Defaults to False.
no_dolby_audio (bool, optional) : 是否禁止提取杜比全景声音频流. Defaults to False.
no_hdr (bool, optional) : 是否禁止提取 HDR 视频流. Defaults to False.
no_hires (bool, optional) : 是否禁止提取 Hi-Res 音频流. Defaults to False.
Returns:
Expand Down Expand Up @@ -2228,15 +2279,25 @@ def detect_best_streams(
**以下参数仅能在音视频流分离的情况下产生作用,flv / mp4 试看流 / html5 mp4 流下以下参数均没有作用**
video_max_quality (VideoQuality) : 设置提取的视频流清晰度最大值,设置此参数绝对不会禁止 HDR/杜比. Defaults to VideoQuality._8K.
audio_max_quality (AudioQuality) : 设置提取的音频流清晰度最大值. 设置此参数绝对不会禁止 Hi-Res/杜比. Defaults to AudioQuality._192K.
video_min_quality (VideoQuality, optional) : 设置提取的视频流清晰度最小值,设置此参数绝对不会禁止 HDR/杜比. Defaults to VideoQuality._360P.
audio_min_quality (AudioQuality, optional) : 设置提取的音频流清晰度最小值. 设置此参数绝对不会禁止 Hi-Res/杜比. Defaults to AudioQuality._64K.
video_accepted_qualities(List[VideoQuality], optional): 设置允许的所有视频流清晰度. Defaults to ALL.
audio_accepted_qualities(List[AudioQuality], optional): 设置允许的所有音频清晰度. Defaults to ALL.
codecs (List[VideoCodecs]) : 设置所有允许提取出来的视频编码. 在数组中越靠前的编码选择优先级越高. 此项不会忽略 HDR/杜比. Defaults to [VideoCodecs.AV1, VideoCodecs.AVC, VideoCodecs.HEV].
no_dolby_video (bool) : 是否禁止提取杜比视界视频流. Defaults to False.
no_dolby_audio (bool) : 是否禁止提取杜比全景声音频流. Defaults to False.
no_hdr (bool) : 是否禁止提取 HDR 视频流. Defaults to False.
no_hires (bool) : 是否禁止提取 Hi-Res 音频流. Defaults to False.
Returns:
Expand Down
5 changes: 5 additions & 0 deletions bilibili_api/video_zone.py
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,9 @@ async def get_zone_top10(
Args:
tid (int) : 频道的 tid。
day (int, optional) : 3 天排行还是 7 天排行。 Defaults to 7.
credential (Credential | None, optional): Credential 类。Defaults to None.
Returns:
Expand Down Expand Up @@ -147,6 +149,7 @@ async def get_zone_videos_count_today(
Args:
credential (Credential | None): 凭据类
Returns:
dict: 调用 API 返回的结果
"""
Expand All @@ -161,7 +164,9 @@ async def get_zone_new_videos(tid: int, page_num: int = 1, page_size: int = 10)
Args:
tid (int) : 分区 id
page_num (int) : 第几页. Defaults to 1.
page_size (int) : 每页的数据大小. Defaults to 10.
Returns:
Expand Down
Loading

0 comments on commit da8f891

Please sign in to comment.