gpt4 book ai didi

ubuntu - 在 Python 脚本中更改嵌入使用的 YouTube-DL 默认保存位置

转载 作者:行者123 更新时间:2023-12-04 19:01:21 26 4
gpt4 key购买 nike

YouTube-DL默认情况下保存在工作目录中,除非您在 youtube-dl.conf 中特别指定了它。文件。但是,这个文件在安装时不存在,我在创建它时遇到了很多麻烦。

我在 Digital Ocean 上运行 Ubuntu 16.04 LAMP 堆栈服务器。

我尝试创建 youtube-dl.conf/usr/local/etc 下然后将其添加到其中:--o ~/html/media/audio/%(title)s但这无济于事。

我尝试了 this 中的解决方案回答:

mkdir -p ~/.config/youtube-dl/
echo "-o ~/html/media/audio/%(title)s" > ~/.config/youtube-dl/config

它工作没有任何问题,但我找不到它在哪里制作目录,无论哪种方式它都不起作用。

我不能简单地做 youtube-dl -o "~/Desktop/%(title)s.%(ext)s" 'youtube file url' 之类的事情因为我正在使用 youtube-dl来自 Python 脚本,而不是来自命令行。在没有 URL 的情况下运行上述命令是行不通的。 Related askubuntu question .

谁能帮我吗?工作目录是 /var/www/html ,但我需要将其保存在 /var/www/html/media/audio .对 Ubuntu 来说还是新手。谢谢!

Youtube-DL Github Configuration Section

编辑:使用下面@phihag 的答案,我添加了这个:
subprocess.check_call(['youtube-dl', '--output', '/var/www/html/media/audio/%(title)s.%(ext)s', url])

但这是将文件保存在 mkv 中我需要它在 mp3格式。我试过类似的东西:
subprocess.check_call(['youtube-dl', '--audio-format', 'mp3', '--output', '/var/www/html/media/audio/%(title)s.%(ext)s', url])

和其他变体,但我得到类似这样的错误:
subprocess.CalledProcessError: Command '['youtube-dl', '--extract-audio --audio-format mp3 --output '/var/www/html/media/audio/%(title)s', 'url']' returned non-zero exit status 2

这些是我以前使用的选项,我现在尝试使用 subprocess 进行模拟:
    ydl_opts = {
'fixup': 'detect_or_warn',
'format': 'bestaudio/best',
'extractaudio': True,
'postprocessors': [{
'key': 'FFmpegExtractAudio',
'preferredcodec': 'mp3',
'preferredquality': '320',
}],
'logger': MyLogger(),
'progress_hooks': [my_hook],
}

使用上面的这些选项不允许更改默认位置。这必须通过命令行逐案完成,每次您要下载时,或者您需要使用配置文件(据我了解。我在搜索中没有看到任何示例)通过脚本中的 API 指定默认保存位置)。

最佳答案

无需编写配置文件;您也可以从 python 设置输出模板:

from __future__ import unicode_literals
import youtube_dl

ydl_opts = {
'outtmpl': '/var/www/html/media/audio/%(title)s.%(ext)s',
'extractaudio': True,
'postprocessors': [{
'key': 'FFmpegExtractAudio',
'preferredcodec': 'mp3',
'preferredquality': '320',
}],
}
with youtube_dl.YoutubeDL(ydl_opts) as ydl:
ydl.download(['https://www.youtube.com/watch?v=BaW_jenozKc'])

关于ubuntu - 在 Python 脚本中更改嵌入使用的 YouTube-DL 默认保存位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46656988/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com