【经验】you-get + ffmpeg|b站音频下载
一、原理:
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站音频下载的更多相关文章
- python3GUI--实用!B站视频下载工具(附源码)
目录 一.准备工作 二.预览 1.启动 2.解析 3.下载中 4.下载完成 5.结果 三.设计流程 1.bilibili_video_spider 2.视频json的查找 四.源代码 1.Bilibi ...
- 最简单的基于FFMPEG+SDL的音频播放器 ver2 (采用SDL2.0)
===================================================== 最简单的基于FFmpeg的音频播放器系列文章列表: <最简单的基于FFMPEG+SDL ...
- 最简单的基于FFMPEG+SDL的音频播放器 ver2 (採用SDL2.0)
===================================================== 最简单的基于FFmpeg的音频播放器系列文章列表: <最简单的基于FFMPEG+SDL ...
- b站视频下载技术分享
最近无聊分析了一下b站的视频流协议,简单分享下爬取的流程. 首先先要找到视频对应的aid和cid,aid就相当于av号,而av号对应网页下的每一个视频都有对应的cid,普通视频就是分p,番剧就是集数, ...
- C# 使用ffmpeg.exe进行音频转换完整demo-asp.net转换代码
C# 使用ffmpeg.exe进行音频转换完整demo-asp.net转换代码 上一篇说了在winform下进行调用cmd.exe执行ffmpeg.exe进行音频转换完整demo.后来我又需要移植这个 ...
- 【Nodejs】外研社一年级起各年级英语音频下载(缺456年级上)
在 https://news.21cnjy.com/A/130/235/V729768.shtml 有各年级英语音频下载,用爬虫把能下的都下了,除了四五六年级上册的. 爬虫 http://www.cn ...
- FFmpeg + SoundTouch实现音频的变调变速
本文使用FFmpeg + SoundTouch实现将音频解码后,进行变调变速处理,并将处理后的结果保存为WAV文件. 主要有以下内容: 实现一个FFmpeg的工具类,保存多媒体文件所需的解码信息 将解 ...
- C# 使用ffmpeg.exe进行音频转换完整demo
今天在处理微信的开发接口时候,发现微信多媒体上传接口中返回的音频格式是amr.坑人的是现在大部分的web 播放器,不支持amr的格式播放.试了很多方法都不行. 没办法,只要找一个妥协的解决方案:将am ...
- EasyDarwin开源音频解码项目EasyAudioDecoder:基于ffmpeg的安卓音频(AAC、G726)解码库(第一部分,ffmpeg-android的编译)
ffmpeg是一套开源的,完整的流媒体解决方案.基于它可以很轻松构建一些强大的应用程序.对于流媒体这个行业,ffmpeg就像圣经一样的存在.为了表达敬意,在这里把ffmpeg官网的一段简介搬过来,ff ...
- 程序员的脑袋系列---利用ffmpeg命令提取音频
今日各大播放器的版权控制越来越严格.导致很多歌曲无法听,但是MV却可以听.这样很蛋疼有木有? 然而,我们可以利用ffmpeg工具提取MV的音频,比如做成MP3格式,这样就可以听了.--哈哈(邪恶地笑) ...
随机推荐
- Johnson 全源负权最短路径算法详解
Floyd-Warshall算法可以求解出图内任意两点的最短路径,适用于稠密图,但时间复杂度为 \(O(n³)\):Dijkstra算法求解单源最短路径的时间复杂度为 \(O(m + n log n) ...
- git命令参考
git命令参考 前言 在版本管理中,我们常用到git或者svn去管理我们的代码. 因为嵌入式开发经常要用到Linux环境做开发,所以懂得一定的git命令对我们进行开发过程中的版本管理非常重要 创建仓库 ...
- el-radio-group之迷惑操作:label和label
el-radio-group之迷惑操作:label和label 今天学习element-ui的el-radio-group的时候发现el-radio-group的默认值设置无效,但是点击其他单选框可以 ...
- 【攻防世界】ez_curl
ez_curl 题目来源 攻防世界 NO.GFSJ1188 题解 是一个PHP的代码审计 同时还提供了一个附件app.js,打开后内容如下 app.js中: req.query.admin.inclu ...
- 一个简单的PHP单文件路由类示例
<?php class Router { protected $routes = array(); protected $basePath; public function __construc ...
- Windows 提权-内核利用_2
本文通过 Google 翻译 Kernel Exploits Part 2 – Windows Privilege Escalation 这篇文章所产生,本人仅是对机器翻译中部分表达别扭的字词进行了校 ...
- 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 ...
- Docker容器详解
[] 容器(Container)是一种轻量级的虚拟化技术,它通过操作系统级的虚拟化,将应用程序及其依赖环境打包在一起,确保应用程序可以在任何环境中一致运行.与虚拟机不同,容器共享宿主操作系统的内核,而 ...
- Redis 原理 - String
String 数据结构 首先我来看下, Redis 中 String 的数据结构: 我们称之为 SDS (Simple Dynamic String) 简单动态字符串 struct sdshdr { ...
- kubernetes mysql-StatefulSet报错处理
我们使用网上mysql-StatefulSet集群教程时候mysql-1启动错误,init-error. 第一次尝试解决:我从官网上下载yaml部署依然报错. 第二次尝试解决:网上换各种版本的yaml ...