Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

报错 #208

Closed
sniperrich opened this issue Jan 25, 2024 · 2 comments
Closed

报错 #208

sniperrich opened this issue Jan 25, 2024 · 2 comments
Labels
api invalid api is invalid

Comments

@sniperrich
Copy link

运行
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

@HFrost0
Copy link
Owner

HFrost0 commented Jan 25, 2024

#205 相同原因

@HFrost0 HFrost0 added the api invalid api is invalid label Jan 26, 2024
@HFrost0
Copy link
Owner

HFrost0 commented Jan 27, 2024

fixed in 0.18.7

@HFrost0 HFrost0 closed this as completed Jan 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api invalid api is invalid
Projects
None yet
Development

No branches or pull requests

2 participants