Как я могу ввести набор слов вместо одного слова, используя giphy API в качестве команды в раздоре? - PullRequest
1 голос
/ 26 сентября 2019

Я пытаюсь создать на моем боте-диссонанте функцию, которая отправляет случайный GIF-файл на основе их ввода.Так, например, $ gif cat должен отображать кошку, а $ gif собака должна отображать собаку.Код, который я показываю, уже работает нормально, однако он работает только тогда, когда ввод представляет собой одно слово.

У меня вопрос, как мне изменить код таким образом, чтобы $gif person crying profusely работал?

Я пытался сделать async def gif(ctx, input1, input2), но это не работает ... и еслида, я ожидаю, что он будет ограничен всего двумя словами ...

api_instance = giphy_client.DefaultApi()

def giphy(bot):
    @bot.event
    async def search_gif(query):
        try:
            response = api_instance.gifs_search_get(giphy_token, query, limit=50, rating='g')
            lst = list(response.data)
            gif = random.choices(lst)

            return gif[0].url

        except ApiException as e:
            return (f"Exception when calling DefaultApi->gifs_search_get: {e}\n")

    @bot.command()
    async def gif(ctx, input): #Sends random GIF of input
        """
        Search for GIFs
        """
        channel = ctx.channel
        gif = await search_gif(input)
        await channel.send(gif)
...