You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Discord.py音乐机器人修改youtube-dl下载文件存储目录问题求助

修改方法

  1. 首先在你的Python脚本同级目录新建用于存储下载音频的文件夹,例如命名为 ytdl_cache
  2. 找到你代码中的 ytdl_format_options 配置项,修改其中的 outtmpl 参数,在原有文件名模板前加上你新建的文件夹路径即可:
ytdl_format_options = {
    'format': 'bestaudio/best',
    # 仅修改这一行即可,前面加上文件夹路径
    'outtmpl': './ytdl_cache/%(extractor)s-%(id)s-%(title)s.%(ext)s',
    'restrictfilenames': True,
    'noplaylist': True,
    'nocheckcertificate': True,
    'ignoreerrors': False,
    'logtostderr': False,
    'quiet': True,
    'no_warnings': True,
    'default_search': 'auto',
    'source_address': '0.0.0.0' # bind to ipv4 since ipv6 addresses cause issues sometimes
}
  1. 可选优化:可以在代码开头加入自动创建文件夹的逻辑,避免手动创建遗漏导致报错:
import os
# 放在导入youtube_dl的代码之前即可
if not os.path.exists('ytdl_cache'):
    os.makedirs('ytdl_cache')

如果是Linux/macOS环境,需要确保脚本对ytdl_cache文件夹有读写权限。

额外优化提示

你现有play函数存在逻辑重复问题:当机器人未加入语音频道时,你在连接成功的逻辑分支内已经执行了一次播放操作,分支外又写了一遍通用播放逻辑,会导致首次连接时同一首歌被重复加载两次,建议把分支外的播放逻辑放到else分支中即可修复。

内容的提问来源于stack exchange,提问作者zenabz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 03:48:03