一、原理:

you-get下载,ffmpeg音视频分离。

这两个都是命令行工具。

you-get安装(无python环境请参考python详细安装教程):

pip3 install --upgrade you-get

最近 (版本0.4.1545) B站的视频用you-get下不了了,翻了下源代码的pull-request那个pull-request问题的链接,刚好看见了这个问题,有大佬rfiacne给了解决方法,我试过,可以。你们要是也用不了就也可以试试。

ffmpeg安装:Windows 10系统下安装FFmpeg教程详解

二、应用:

you-get --format=flv720 https://www.bilibili.com/video/BV15t4y1i7S8?p=2
ffmpeg -i "【周深】吉他弹唱《真夏的樱花》,汽车音乐会秒变毕业音乐会~(P2. 《真夏的樱花》纯享).flv" -vn 真夏的樱花.mp3
del *.flv *.xml

第一句:format用来选择下载格式,建议720以上,否则音频可能被压缩。格式:you-get --format=flv720 [网址]

第二句:ffmpeg -i [视频名称] -vn [音频名称]

第三句:删除所有flv和xml文件。

可以写成bat文件,c语言也很方便:

#include<stdio.h>
#include<windows.h>
#include<string.h>
#include<stdlib.h>
#include<direct.h>
#include <unistd.h>
#include<dirent.h>
#include<io.h> int main()
{
char BV[20],name[100]; printf("请输入BV号(如果下载特定的分p,输入样例:BV15t4y1i7S8?p=2)\n");
scanf("%s",BV);
char order_download[100]="you-get --format=flv720 https://www.bilibili.com/video/";
strcat(order_download,BV);
system(order_download); printf("\n请输入转换后的音频名字:\n");
scanf("%s",name); char ffmpeg[1000]="ffmpeg -i 1.flv -vn \"";
strcat(ffmpeg,name);
strcat(ffmpeg,".mp3\"");
struct _finddata_t find;
long file1=_findfirst("*.flv", &find);
rename(find.name,"1.flv");
_findclose(file1);
system(ffmpeg); system("del *.flv *.xml");
return 0;
}

三、结果:

最后但最重要的,多去音乐软件支持喜欢的歌手!

【经验】you-get + ffmpeg|b站音频下载的更多相关文章

  1. python3GUI--实用!B站视频下载工具(附源码)

    目录 一.准备工作 二.预览 1.启动 2.解析 3.下载中 4.下载完成 5.结果 三.设计流程 1.bilibili_video_spider 2.视频json的查找 四.源代码 1.Bilibi ...

  2. 最简单的基于FFMPEG+SDL的音频播放器 ver2 (采用SDL2.0)

    ===================================================== 最简单的基于FFmpeg的音频播放器系列文章列表: <最简单的基于FFMPEG+SDL ...

  3. 最简单的基于FFMPEG+SDL的音频播放器 ver2 (採用SDL2.0)

    ===================================================== 最简单的基于FFmpeg的音频播放器系列文章列表: <最简单的基于FFMPEG+SDL ...

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

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

  5. C# 使用ffmpeg.exe进行音频转换完整demo-asp.net转换代码

    C# 使用ffmpeg.exe进行音频转换完整demo-asp.net转换代码 上一篇说了在winform下进行调用cmd.exe执行ffmpeg.exe进行音频转换完整demo.后来我又需要移植这个 ...

  6. 【Nodejs】外研社一年级起各年级英语音频下载(缺456年级上)

    在 https://news.21cnjy.com/A/130/235/V729768.shtml 有各年级英语音频下载,用爬虫把能下的都下了,除了四五六年级上册的. 爬虫 http://www.cn ...

  7. FFmpeg + SoundTouch实现音频的变调变速

    本文使用FFmpeg + SoundTouch实现将音频解码后,进行变调变速处理,并将处理后的结果保存为WAV文件. 主要有以下内容: 实现一个FFmpeg的工具类,保存多媒体文件所需的解码信息 将解 ...

  8. C# 使用ffmpeg.exe进行音频转换完整demo

    今天在处理微信的开发接口时候,发现微信多媒体上传接口中返回的音频格式是amr.坑人的是现在大部分的web 播放器,不支持amr的格式播放.试了很多方法都不行. 没办法,只要找一个妥协的解决方案:将am ...

  9. EasyDarwin开源音频解码项目EasyAudioDecoder:基于ffmpeg的安卓音频(AAC、G726)解码库(第一部分,ffmpeg-android的编译)

    ffmpeg是一套开源的,完整的流媒体解决方案.基于它可以很轻松构建一些强大的应用程序.对于流媒体这个行业,ffmpeg就像圣经一样的存在.为了表达敬意,在这里把ffmpeg官网的一段简介搬过来,ff ...

  10. 程序员的脑袋系列---利用ffmpeg命令提取音频

    今日各大播放器的版权控制越来越严格.导致很多歌曲无法听,但是MV却可以听.这样很蛋疼有木有? 然而,我们可以利用ffmpeg工具提取MV的音频,比如做成MP3格式,这样就可以听了.--哈哈(邪恶地笑) ...

随机推荐

  1. Johnson 全源负权最短路径算法详解

    Floyd-Warshall算法可以求解出图内任意两点的最短路径,适用于稠密图,但时间复杂度为 \(O(n³)\):Dijkstra算法求解单源最短路径的时间复杂度为 \(O(m + n log n) ...

  2. git命令参考

    git命令参考 前言 在版本管理中,我们常用到git或者svn去管理我们的代码. 因为嵌入式开发经常要用到Linux环境做开发,所以懂得一定的git命令对我们进行开发过程中的版本管理非常重要 创建仓库 ...

  3. el-radio-group之迷惑操作:label和label

    el-radio-group之迷惑操作:label和label 今天学习element-ui的el-radio-group的时候发现el-radio-group的默认值设置无效,但是点击其他单选框可以 ...

  4. 【攻防世界】ez_curl

    ez_curl 题目来源 攻防世界 NO.GFSJ1188 题解 是一个PHP的代码审计 同时还提供了一个附件app.js,打开后内容如下 app.js中: req.query.admin.inclu ...

  5. 一个简单的PHP单文件路由类示例

    <?php class Router { protected $routes = array(); protected $basePath; public function __construc ...

  6. Windows 提权-内核利用_2

    本文通过 Google 翻译 Kernel Exploits Part 2 – Windows Privilege Escalation 这篇文章所产生,本人仅是对机器翻译中部分表达别扭的字词进行了校 ...

  7. python ImportError: libGL.so.1: cannot open shared object file: No such file or directory

    前言 python 报错python ImportError: libGL.so.1: cannot open shared object file: No such file or director ...

  8. Docker容器详解

    [] 容器(Container)是一种轻量级的虚拟化技术,它通过操作系统级的虚拟化,将应用程序及其依赖环境打包在一起,确保应用程序可以在任何环境中一致运行.与虚拟机不同,容器共享宿主操作系统的内核,而 ...

  9. Redis 原理 - String

    String 数据结构 首先我来看下, Redis 中 String 的数据结构: 我们称之为 SDS (Simple Dynamic String) 简单动态字符串 struct sdshdr { ...

  10. kubernetes mysql-StatefulSet报错处理

    我们使用网上mysql-StatefulSet集群教程时候mysql-1启动错误,init-error. 第一次尝试解决:我从官网上下载yaml部署依然报错. 第二次尝试解决:网上换各种版本的yaml ...