Python中you-get和youtube-dl最近无法下载部分B站视频,如何解决?
you-get 前阵子不知道为啥关闭了 issue,有问题都没法提交了,这几天发现 B 站部分视频可以下载,部分视频无法下载,很困惑,大家知道怎么解决吗,就比如谷阿莫的这两集视频,是挨着发布的,一个可以下载,一个不可以下载。
you-get https://www.bilibili.com/video/av18486722
you-get: [error] oops, something went wrong.
you-get: don't panic, c'est la vie. please try the following steps:
you-get: (1) Rule out any network problem.
you-get: (2) Make sure you-get is up-to-date.
you-get: (3) Check if the issue is already known, on
you-get: https://github.com/soimort/you-get/wiki/Known-Bugs
you-get: https://github.com/soimort/you-get/issues
you-get: (4) Run the command with '--debug' option,
you-get: and report this issue with the full output.
site: Bilibili
title: None
stream:
- format: flv
container: flv
size: 179.2 MiB (187878378 bytes)
# download-with: you-get --format=flv [URL]
you-get https://www.bilibili.com/video/av18447844
site: Bilibili
title: [谷阿莫] 5 分鐘看完 2017 自己的肉自己吃的電影《雪山奇迹 6 Below 》
stream:
- format: flv
container: flv
size: 116.8 MiB (122470241 bytes)
# download-with: you-get --format=flv [URL]
Downloading [谷阿莫] 5 分鐘看完 2017 自己的肉自己吃的電影《雪山奇迹 6 Below 》.flv …
2.1% ( 2.5/116.8MB) ├█───────────────────────────────────────┤[1/1] 964 kB/s
我的 you-get 版本是you-get: version 0.4.1011, a tiny downloader that scrapes the web.最新的开发版。
使用了最新的 2018.01.27 版本的 youtube-dl 也是同样的效果,第一个下载不了,第二个可以下载,求高人解答,谢谢。
Python中you-get和youtube-dl最近无法下载部分B站视频,如何解决?
我这倒好,,全都无法下载
遇到B站下载问题,可以试试用 yt-dlp 替代。它是youtube-dl的活跃分支,更新快,对B站的支持更好。
先安装:
pip install yt-dlp
基本下载命令:
import yt_dlp
url = "https://www.bilibili.com/video/BV1xx411c7mD"
ydl_opts = {
'outtmpl': '%(title)s.%(ext)s',
}
with yt_dlp.YoutubeDL(ydl_opts) as ydl:
ydl.download([url])
如果遇到需要登录才能看的视频(比如大会员专享),需要添加cookies:
ydl_opts = {
'cookiefile': 'bilibili_cookies.txt', # 从浏览器导出的cookies文件
}
获取更高清晰度:
ydl_opts = {
'format': 'bestvideo+bestaudio/best',
}
有时候B站会返回dash格式,需要合并音视频:
ydl_opts = {
'format': 'bestvideo+bestaudio/best',
'merge_output_format': 'mp4',
}
如果还不行,可能是B站又更新了反爬机制,需要更新yt-dlp:
pip install --upgrade yt-dlp
换yt-dlp试试。
你可以试试使用开发版<br>sudo pip3 install --upgrade <a target="_blank" href="https://github.com/soimort/you-get/archive/develop.zip" rel="nofollow noopener">https://github.com/soimort/you-get/archive/develop.zip</a><br>
土办法一个。播放时 F12 找到地址,一段一段下回来,ffmpeg 合并,帧率显示错误可以 lsmash 再混流一次。
don’t panic, c’est la vie
接上面的土办法 F12 找到后,可以用这个工具自动下载合并。
https://github.com/XhstormR/GetBilibili-C
昨天翻 you-get 仓库发现的 fork 版 lulu,可解决大部分不能下载的问题
https://github.com/iawia002/Lulu
斗鱼的直播都下载不了了
很多 pr,官方拖了好久没合并,所以我也是用了 lulu
非常感谢,好用
lulu 似乎也不行,我等了好久,youtube-dl 和 you-get 就是没更新
用 IDM 下吧
最新的开发版应该是可以的啊?试了一下旧版本找不到标题会报错
Commits on Feb 3, 2018
[bilibili] fix some title regexes
hi,大家好,我是 iawia002,lulu 的维护者,以前也是 you-get 的 Contributor
fork 它出来自己搞的主要原因有两个:1.you-get 的更新速度实在太慢,2.you-get 的很多 extractors 的代码太乱了,soimort 对 PR 的态度又很随意,这样只会导致整个项目代码越来越难以阅读和维护
如果大家有什么问题可以提 Issues,也欢迎 Pull request
Lulu 目前解决了我的问题
感谢推荐
然后 you-get 的 issue 还关闭了。。。
这个是因为 soimort 说他想尝试一种激进的提 issue 的方式,通过 PR 来提,你使用的哪个 extractor 挂了你就添加一个对应的单元测试来报告
我也是不行了 努力找方法
知道了 视频链接要双引号就可以了


