【问题标题】:How do I make my discord bot play audio from YouTube如何让我的不和谐机器人播放来自 YouTube 的音频
【发布时间】:2017-08-19 09:41:09
【问题描述】:

所以,我的问题是如何将变量 url 设置为某人在 yt 之后键入的内容?例如!yt [youtbube link] makes url = [youtube link]

这是我目前的代码,感谢任何帮助

@client.command(pass_context=True)
async def yt(ctx):
    url = 'https://www.youtube.com/watch?v=rPOUewuNKFE'

    author = ctx.message.author
    voice_channel = author.voice_channel
    vc = await client.join_voice_channel(voice_channel)

    player = await vc.create_ytdl_player(url)
    player.start()

【问题讨论】:

  • 这段代码有什么问题(修复缩进后)?
  • 代码没有任何问题,我只是不知道如何让它播放某人在 !yt 之后放置的链接,我把我的代码放在这里只是为了让人们可以看到我拥有的东西。跨度>

标签: python python-3.x youtube bots discord.py


【解决方案1】:

其实很简单。只需将其作为参数添加到函数中即可。

@client.command(pass_context=True)
async def yt(ctx, url):

    author = ctx.message.author
    voice_channel = author.voice_channel
    vc = await client.join_voice_channel(voice_channel)

    player = await vc.create_ytdl_player(url)
    player.start()

如果您愿意,您还可以使用标准函数注释 (async def yt(ctx, url: str):) 指定参数的类型,但这不会很有用,因为默认情况下无论如何都会将它们作为字符串传递。

【讨论】:

  • 或者,您可以使用yt(ctx, *, url),而不是yt(ctx, url),这样它只会将其余消息接受到url中。
  • 格式良好的 Youtube url 中从来没有空格,但是,这个程序也不能播放多个用空格分隔的 url,所以我认为没有必要这样做。
  • 我将如何启动它,并命令机器人播放输入的 URL?谢谢!
【解决方案2】:
@client.command(pass_context=True)
    async def yt(ctx):
        url = ctx.message.content
        url = url.strip('!yt ')

        author = ctx.message.author
        voice_channel = author.voice_channel
        vc = await client.join_voice_channel(voice_channel)

        player = await vc.create_ytdl_player(url)
        player.start()

【讨论】:

    【解决方案3】:

    我假设您已经知道这一点,但是那里有机器人可以为您做这件事。万一你不这样做,你可以给它一个来自 YouTube 的链接,并确保机器人在你的语音频道中。我不确定您是否试图让它在多个语音通道中播放不同的链接。我非常怀疑机器人是否可以在多个语音通道上播放不同的歌曲,因为它必须与您在语音通道中。

    【讨论】:

    • 是的,我知道有机器人可以做到这一点,但我想让我的机器人做到这一点:P
    • 这是有道理的。我想过尝试制作自己的机器人。我真的只在周末玩,所以这对我没什么好处。
    • 不,机器人加入语音频道后,您可以将机器人拖放到舞台频道。让机器人说话,你可以离开
    猜你喜欢
    • 2021-03-16
    • 2023-03-18
    • 2021-06-14
    • 2021-11-15
    • 2021-09-30
    • 2022-01-24
    • 2021-09-06
    • 2020-10-15
    • 2020-12-19
    相关资源
    最近更新 更多