【经验】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;
}

三、结果:
在这里插入图片描述

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

posted @   shandianchengzi  阅读(883)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示