HFrost0 / bilix

⚡️Lightning-fast async download tool for bilibili and more

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

报错

sniperrich opened this issue · comments

运行
import asyncio

导入下载器,里面有很多方法,例如get_series, get_video, get_favour,get_dm等等

from bilix.sites.bilibili import DownloaderBilibili

async def main():
# 你可以使用async with上下文管理器来开启和关闭一个下载器
async with DownloaderBilibili() as d:
# 然后用await异步等待下载完成
await d.get_video("https://www.bilibili.com/video/BV1jK4y1N7ST")

if name == 'main':
asyncio.run(main())

显示
C:\Users\rich\AppData\Local\Programs\Python\Python39\python.exe C:\Users\rich\Downloads\qttt\test.py
Traceback (most recent call last):
File "C:\Users\rich\AppData\Local\Programs\Python\Python39\lib\site-packages\bilix\download\utils.py", line 90, in wrapped
return await func(client, *args, **kwargs)
File "C:\Users\rich\AppData\Local\Programs\Python\Python39\lib\site-packages\bilix\sites\bilibili\api.py", line 400, in get_video_info
return await _get_video_info_from_html(client, url)
File "C:\Users\rich\AppData\Local\Programs\Python\Python39\lib\site-packages\bilix\sites\bilibili\api.py", line 410, in _get_video_info_from_html
video_info = VideoInfo.parse_html(url, res.text)
File "C:\Users\rich\AppData\Local\Programs\Python\Python39\lib\site-packages\bilix\sites\bilibili\api.py", line 377, in parse_html
dash = Dash.from_dict(play_info)
File "C:\Users\rich\AppData\Local\Programs\Python\Python39\lib\site-packages\bilix\sites\bilibili\api.py", line 233, in from_dict
m = Media(quality=quality, codec=d['codecs'], **d)
File "C:\Users\rich\AppData\Local\Programs\Python\Python39\lib\site-packages\pydantic\main.py", line 164, in init
pydantic_self.pydantic_validator.validate_python(data, self_instance=pydantic_self)
pydantic_core._pydantic_core.ValidationError: 1 validation error for Media
backup_url
Input should be a valid list [type=list_type, input_value=None, input_type=NoneType]
For further information visit https://errors.pydantic.dev/2.5/v/list_type

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "C:\Users\rich\Downloads\qttt\test.py", line 14, in
asyncio.run(main())
File "C:\Users\rich\AppData\Local\Programs\Python\Python39\lib\asyncio\runners.py", line 44, in run
return loop.run_until_complete(main)
File "C:\Users\rich\AppData\Local\Programs\Python\Python39\lib\asyncio\base_events.py", line 647, in run_until_complete
return future.result()
File "C:\Users\rich\Downloads\qttt\test.py", line 10, in main
await d.get_series("https://www.bilibili.com/video/BV1jK4y1N7ST")
File "C:\Users\rich\AppData\Local\Programs\Python\Python39\lib\site-packages\bilix\download\base_downloader.py", line 75, in wrapper
return await func(*new_args, **kwargs)
File "C:\Users\rich\AppData\Local\Programs\Python\Python39\lib\site-packages\bilix\sites\bilibili\downloader.py", line 299, in get_series
video_info = await api.get_video_info(self.client, url)
File "C:\Users\rich\AppData\Local\Programs\Python\Python39\lib\site-packages\bilix\download\utils.py", line 94, in wrapped
raise APIParseError(e, func) from e
bilix.exception.APIParseError: APIParseError Caused by ValidationError in bilix.sites.bilibili.api:get_video_info

Process finished with exit code 1

#205 相同原因

fixed in 0.18.7