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

🐛 (存疑)可开启Hi-Res无损音质的视频下载出错 #165

Closed
3 tasks done
nbblscott opened this issue Aug 10, 2023 · 4 comments · Fixed by #166
Closed
3 tasks done

🐛 (存疑)可开启Hi-Res无损音质的视频下载出错 #165

nbblscott opened this issue Aug 10, 2023 · 4 comments · Fixed by #166

Comments

@nbblscott
Copy link

nbblscott commented Aug 10, 2023

问题简述

似乎可开启Hi-Res无损音质的视频会下载出错。
测试了多个包含可开启Hi-Res视频均无法下载:BV1qh4y1w7KB、BV1N44y1A7zq、BV19z4y1p7j1

报错信息:
yutto https://www.bilibili.com/video/BV1qh4y1w7KB/ --debug
DEBUG Windows 平台,单独设置 EventLoopPolicy
INFO 未提供 SESSDATA,无法下载会员专享剧集哟~
DEBUG ffmpeg -codecs
DEBUG ffmpeg -encoders
DEBUG ffmpeg -codecs
DEBUG ffmpeg -encoders
DEBUG Get redircted url: https://www.bilibili.com/video/BV1qh4y1w7KB/
DEBUG Fetch json: http://api.bilibili.com/x/web-interface/view?aid=&bvid=BV1qh4y1w7KB
DEBUG Fetch json: http://api.bilibili.com/x/tag/archive/tags?aid=&bvid=BV1qh4y1w7KB
DEBUG Fetch json: https://api.bilibili.com/x/player/pagelist?aid=&bvid=BV1qh4y1w7KB&jsonp=jsonp
投稿视频 【copyright考虑隐去标题】
DEBUG Fetch json: https://api.bilibili.com/x/player/playurl?avid=&bvid=BV1qh4y1w7KB&cid=1221303604&qn=127&type=&otype=json&fnver=0&fnval=4048&fourk=1
Traceback (most recent call last):
File "D:\soft\python39\lib\runpy.py", line 197, in run_module_as_main
return run_code(code, main_globals, None,
File "D:\soft\python39\lib\runpy.py", line 87, in run_code
exec(code, run_globals)
File "D:\soft\python39\Scripts\yutto.exe_main
.py", line 7, in
File "D:\soft\python39\lib\site-packages\yutto_main
.py", line 57, in main
run(args_list)
File "D:\soft\python39\lib\site-packages\yutto\utils\funcutils\as_sync.py", line 34, in sync_func
return asyncio.run(async_func(*args, **kwargs))
File "D:\soft\python39\lib\asyncio\runners.py", line 44, in run
return loop.run_until_complete(main)
File "D:\soft\python39\lib\asyncio\base_events.py", line 642, in run_until_complete
return future.result()
File "D:\soft\python39\lib\site-packages\yutto_main
.py", line 269, in run
episode_data = await episode_data_coro
File "D:\soft\python39\lib\site-packages\yutto\utils\asynclib.py", line 26, in await
return (yield from self.coro.await())
File "D:\soft\python39\lib\site-packages\yutto\extractor\common.py", line 140, in extract_ugc_video_data
videos, audios = await get_ugc_video_playurl(session, avid, cid)
File "D:\soft\python39\lib\site-packages\yutto\api\ugc_video.py", line 230, in get_ugc_video_playurl
"url": hi_res_audio_json["base_url"],
TypeError: 'NoneType' object is not subscriptable

复现方式

yutto https://www.bilibili.com/video/BV1qh4y1w7KB/

环境信息

  • OS: Win10专业版1909
  • Python: Python 3.9.5
  • yutto: yutto 2.0.0-beta.28
  • FFmpeg: FFmpeg 4.3.1

额外信息

No response

一点点的自我检查

  • 充分阅读 README.md,特别是与本 issue 相关的部分
  • 如果是网络问题,已经检查网络连接、设置是否正常,并经过充分测试认为这是 yutto 本身的问题
  • 本 issue 在 issuesdiscussion 中并没有重复问题
@SigureMo
Copy link
Member

看样子非大会员无法访问 hi-res 资源,如果是大会员可以设置下 cookie,非大会员通过 --audio-quality 调整下首选音质吧,我稍后会调整下自动选择策略,保证不报错

@nbblscott
Copy link
Author

非大会员刚试了下,加上--audio-quality 30280 指定320k音质以及指定只下载视频流都同样报错:

File "D:\soft\python39\lib\site-packages\yutto\api\ugc_video.py", line 230, in get_ugc_video_playurl
"url": hi_res_audio_json["base_url"],
TypeError: 'NoneType' object is not subscriptable

@SigureMo
Copy link
Member

pip install git+https://github.com/yutto-dev/yutto@main

试一下修改后的呢?

@nbblscott
Copy link
Author

pip install git+https://github.com/yutto-dev/yutto@main

试一下修改后的呢?

可以了,非常感谢~

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants