这是我的代码:
call(['youtube-dl', '-i', '--extract-audio', '--audio-format mp3','-w','ytsearch:'+song ,'-o '+song2file(song)+'.%(ext)s'], shell=False)
注意:这是此代码的实现:youtuble-dl -i --extract-audio --audio-format mp3 -w ytsearch:Wham Bam -o WhamBam.%(ext)s
其中song = Wham Bam,当我运行这个cmd时,它运行得很好,但python实现不起作用。
在运行它时,它会返回以下错误:
youtube-dl:错误:没有这样的选项: - audio-format
答案 0 :(得分:0)
作为解决方案的一部分,最好像这样正确格式化字符串:
arg= ['-i', '--extract-audio', '--audio-format mp3','-w','ytsearch:'+song ,'-o
'+song2file(song)+'.%(ext)s'];
yt-arg= " ".join(str(x) for x in arg);
然后称呼
subprocess.call(['youtube-dl', yt-arg], shell=False)
这已经解决了您描述的问题,但是-o选项似乎仍然有问题。 请记住要正确格式化字符串,不要不小心。