如何直接以 .mp3 格式将视频下载为音频文件?
恐怕你不能。唯一可直接下载的文件是列在下面的文件yt.streams.all()
。
但是,将下载的音频文件从转换.mp4
为.mp3
格式很简单。例如,如果你安装了ffmpeg,从终端运行这个命令就可以了(假设你在下载目录中):
$ ffmpeg -i downloaded_filename.mp4 new_filename.mp3
或者,您可以使用 Python 的subprocess
模块以编程方式执行 ffmpeg 命令:
import os
import subprocess
import pytube
yt = pytube.YouTube("https://www.youtube.com/watch?v=WH7xsW5Os10")
vids= yt.streams.all()
for i in range(len(vids)):
print(i,'. ',vids[i])
vnum = int(input("Enter vid num: "))
parent_dir = r"C:\YTDownloads"
vids[vnum].download(parent_dir)
new_filename = input("Enter filename (including extension): ")) # e.g. new_filename.mp3
default_filename = vids[vnum].default_filename # get default name using pytube API
subprocess.run([
'ffmpeg',
'-i', os.path.join(parent_dir, default_filename),
os.path.join(parent_dir, new_filename)
])
print('done')
编辑:删除提及subprocess.call
. 使用subprocess.run
(除非您使用 Python 3.4 或更低版本)