YT搜索Discord Bot

时间:2018-09-20 00:08:38

标签: python discord discord.py

我想知道如何使我的机器人根据YouTube搜索来播放音乐,而不必复制URL。

这是我现在的音乐播放代码,

  @client.command(pass_context=True)
     async def play(ctx, url):
    server = ctx.message.server
    await client.say ('Music now playing...')
    voice_client = client.voice_client_in(server)
    player = await voice_client.create_ytdl_player(url, after=lambda: 
    check_queue(server.id))
    players[server.id] = player
    player.start()

我需要添加什么才能使其播放搜索结果而不是URL。

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以通过在选项中将default_search设置为auto来做到这一点。这意味着当指定URL时,它仍然可以按预期运行,但是如果不是URL,则将进行搜索。这里的文档:https://github.com/rg3/youtube-dl/blob/master/README.md#options

您可以在代码中进行修改。

@client.command(pass_context=True)
    async def play(ctx, url):
    server = ctx.message.server
    await client.say ('Music now playing...')
    voice_client = client.voice_client_in(server)
    player = await voice_client.create_ytdl_player(url, ytdl_options={'default_search': 'auto'} after=lambda: check_queue(server.id))
    players[server.id] = player
    player.start()