you-get下载B站视频

库存

you-get介绍

https://github.com/soimort/you-get

  • you-get是一个命令行工具,可以下载知名网站的视频

  • 支持的网站有

     https://github.com/soimort/you-get#supported-sites
    • B站、优酷、iqiyi等号称都支持(未测试)

you-get安装

  • pip安装即可

     pip install you-get
  • 安装完毕可以在python主目录下看到you-get.exe

B站视频下载

若有侵权,联系删除

单个视频

  • 以计算机速成课:https://www.bilibili.com/video/BV1EW411u7th?p=1,为例

  • 我们打开命令行就可以直接下载该视频

      you-get https://www.bilibili.com/video/BV1EW411u7th?p=1
     you-get: This is a multipart video. (use --playlist to download all parts.)
     site:               Bilibili
     title:               【计算机科学速成课】[40集全/精校] - Crash Course Computer Science (P1. 1. 计算机早期历史-Early Computing)
     stream:
         - format:       dash-flv
          container:     mp4
          quality:       高清 1080P
          size:          95.9 MiB (100564888 bytes)
         # download-with: you-get --format=dash-flv [URL]
     ​
     Downloading 【计算机科学速成课】(40集全-精校) - Crash Course Computer Science (P1. 1. 计算机早期历史-Early Comput.mp4 ...
      100% ( 95.9/ 95.9MB) ├████████████████████████████████████████┤[2/2]    9 MB/s
     Merging video parts... Merged into 【计算机科学速成课】(40集全-精校) - Crash Course Computer Science (P1. 1. 计算机早期历史-Early Comput.mp4
     ​
     Downloading 【计算机科学速成课】(40集全-精校) - Crash Course Computer Science (P1. 1. 计算机早期历史-Early Comput.cmt.xml ...
  • 观察输出信息,可以看到我们下载了1个视频,还有xml文件

  • 如果不需要xml

      you-get --playlist --no-caption https://www.bilibili.com/video/BV1EW411u7th?p=1

系列视频

所谓的系列视频就是尾部的?p=1是连续的

以前没有这个参数的时候我还写了个python代码封装了下,现在直接就用参数搞定了。

  • 头部有个提示非常重要:This is a multipart video. (use --playlist to download all parts.)

  • 我们可以使用命令下载所有该系列的视频

      you-get --playlist https://www.bilibili.com/video/BV1EW411u7th?p=1

视频列表

  • 比如码农高天的《不基础的python基础》

     https://www.bilibili.com/video/BV1ju411z7Sy/?spm_id_from=333.788&vd_source=d61c58dca32c5d3ac2ed193c3abdd530
    • 目前没想到好的办法处理

附录:命令行参数

  • 你可以忽略这部分

  • 参数可以通过you-get --help得到,常用的并不多。

    • -O FILE 输出到指定文件名

    • -o DIR 输出到某个目录下

 Download options:
  -n, --no-merge       Do not merge video parts
  --no-caption         Do not download captions (subtitles, lyrics, danmaku, ...)
  --postfix             Postfix downloaded files with unique identifiers
  -f, --force           Force overwriting existing files
  --skip-existing-file-size-check
                        Skip existing file without checking file size
  -F STREAM_ID, --format STREAM_ID
                        Set video format to STREAM_ID
  -O FILE, --output-filename FILE
                        Set output filename
  -o DIR, --output-dir DIR
                        Set output directory
  -p PLAYER, --player PLAYER
                        Stream extracted URL to a PLAYER
  -c COOKIES_FILE, --cookies COOKIES_FILE
                        Load cookies.txt or cookies.sqlite
  -t SECONDS, --timeout SECONDS
                        Set socket timeout
  -d, --debug           Show traceback and other debug info
  -I FILE, --input-file FILE
                        Read non-playlist URLs from FILE
  -P PASSWORD, --password PASSWORD
                        Set video visit password to PASSWORD
  -l, --playlist       Prefer to download a playlist
  -a, --auto-rename     Auto rename same name different files
  -k, --insecure       ignore ssl errors
  -m, --m3u8           download video using an m3u8 url
 ​
 Playlist optional options:
  --first FIRST         the first number
  --last LAST           the last number
  --size PAGE_SIZE, --page-size PAGE_SIZE
                        the page size number
 ​
 Proxy options:
  -x HOST:PORT, --http-proxy HOST:PORT
                        Use an HTTP proxy for downloading
  -y HOST:PORT, --extractor-proxy HOST:PORT
                        Use an HTTP proxy for extracting only
  --no-proxy           Never use a proxy
  -s HOST:PORT or USERNAME:PASSWORD@HOST:PORT, --socks-proxy HOST:PORT or USERNAME:PASSWORD@HOST:PORT
                        Use an SOCKS5 proxy for downloading
 

you-get下载B站视频的更多相关文章

  1. 使用终端批量下载 B 站视频

    需要使用一个叫做 you-get 的命令行程序 可以通过 Homebrew 安装(macOS), 安装命令为 brew install you-get, 其他平台的安装可参考 Github 主页: s ...

  2. 批量下载B站视频

    一个一个下载:https://www.zhihu.com/question/41367609 WSDAB的回答批量下载:https://www.zhihu.com/question/49793759( ...

  3. B站视频下载(VideoHelper)

    继续上次的知乎爬虫, 这次开始了哔哩哔哩的爬虫实践: 首先介绍下如何下载吧: VideoHelper 里面有三种方式下载b站视频. 同样的流程, 还是先抓包,分析参数,寻找参数(包括之前的请求包和页面 ...

  4. b站视频下载技术分享

    最近无聊分析了一下b站的视频流协议,简单分享下爬取的流程. 首先先要找到视频对应的aid和cid,aid就相当于av号,而av号对应网页下的每一个视频都有对应的cid,普通视频就是分p,番剧就是集数, ...

  5. 如何下载B站哔哩哔哩(bilibili)弹幕网站上的视频呢?小白教你个简单方法

    对于90后.00后来说,B站肯定听过吧.小编有一个苦恼的地方,有时候想把哔哩哔哩(bilibili)上看到的视频保存到手机相册,不知道咋操作啊.网上百度了下,都是要下载电脑软件的,有些还得要付费的.前 ...

  6. b站视频_下载_去水印_视频转mp4-批量下载神器

    b站下载_视频_去水印_转mp4_批量下载的解决办法 以下问题均可解决 b站下载的视频如何保存到本地 b站下载的视频在那个文件夹里 b站下载视频转mp4 b站下载app b站下载在哪 b站下载视频电脑 ...

  7. 大学MOOC课程视频下载、流文件合并、批量重命名、b站视频下载及学习课程视频推荐

    计算机行业技术更新快,编程语言种类多,在当今大数据和人工智能的时代,为了能在相关领域有所成就,就必须掌握好python.R等语言,较好的数学基础和深入的行业背景知识.计算机从业人员务必践行" ...

  8. 利用Selenium和Browsermob批量嗅探下载Bilibili网站视频

    Rerence: http://www.liuhao.me/2016/09/20/selenium_browsermob_sniff_bilibili_video/ 日常生活中,用电脑看视频是非常频繁 ...

  9. Python批量合并处理B站视频

    最近想学习后端,又不想花钱,怎么办呢?于是在手机端B站(哔哩哔哩)上面找到了满意的免费视频教程,但是手机端看起来很不方便啊.于是,我通过在手机端缓存下来后,导入到了电脑端,但是我后面了发现两个问题: ...

  10. 【玩具】获取B站视频的音频片段

    事情是这样的,我有个和社畜的社会地位不太相符的小爱好--听音乐剧. 基本上是在B站上点开视频听,不是不想在网易云或者QQ音乐听,只是在这些音乐软件上面,我想听的片段要不就收费,要不版本不是我喜欢的,要 ...

随机推荐

  1. 永久解决Ubuntu下adb权限问题

    在Linux环境下使用adb链接手机,经常会遇到全下问题,如下: adb: unable to connect for root: insufficient permissions for devic ...

  2. .NET 7 AOT 的使用以及 .NET 与 Go 互相调用

    目录 背景 C# 部分 环境要求 创建一个控制台项目 体验 AOT 编译 C# 调用库函数 减少体积 C# 导出函数 C# 调用 C# 生成的 AOT Golang 部分 安装 GCC Golang ...

  3. K8Snode节点管理集群资源方法

    1.1 方法1 1.将master的admin.conf 文件拷贝到 node节点 [root@k8s-m ~]#scp /etc/kubernetes/admin.conf root@192.168 ...

  4. 为什么Linux需要虚拟内存 [转载好文]

    操作系统中的 CPU 和主内存(Main memory)都是稀缺资源,所有运行在当前操作系统的进程会共享系统中的 CPU 和内存资源,操作系统会使用 CPU 调度器分配 CPU 时间1并引入虚拟内存系 ...

  5. 项目上的业务《接收一个xml信息包进行解析,xml中包含base64解析为电子文件》

    我就直接贴代码了,不太会说,附上注释. ps:需要根据系统字段和xml里面的标签字段进行建表,之后把xml标签的值进行添加.创建表的方法就是拼的sql. // 在线接收接口 @Transactiona ...

  6. win7修改开机动画

    开机动画的修改 首先win7的过场动画是存在于C:\Windows\System32\bootres.dll ,而修改过程动画就需要修改这个dll,我不会改,所以只能用工具美化大师,软媒魔方里面的一个 ...

  7. python-CSV文件的读写

    CSV文件:Comma-Separated Values,中文叫逗号分隔值或者字符分隔值,其文件以纯文本的形式存储表格数据. 可以理解成一个表格,只不过这个 表格是以纯文本的形式显示,单元格与单元格之 ...

  8. 如何基于 Redis 实现分布式锁

    什么是分布式锁 分布式锁:不同进程必须以互斥方式使用共享资源的一种锁方法实现. 实现分布式锁的基础 互斥.任何时刻,只有一个客户端持有锁. 无死锁.最终总是有可能获得锁,即使持有锁的客户端已经崩溃. ...

  9. MongoDB - 数据模型的设计模式

    简介 官方文章的地址是 Building with Patterns: A Summary,其中汇总了 12 种设计模式及使用场景. 上述的图表列举了 12 种设计模式及应用场景,主要是以下这些: 近 ...

  10. 小技巧 EntityFrameworkCore 实现 CodeFirst 通过模型生成数据库表时自动携带模型及字段注释信息

    今天分享自己在项目中用到的一个小技巧,就是使用 EntityFrameworkCore 时我们在通过代码去 Update-Database 生成数据库时如何自动将代码模型上的注释和字段上的注释携带到数 ...