简体   繁体   English

导入 discord.py 模块的问题

[英]Problem with importing discord.py modules

StackOverflow.堆栈溢出。 I've been having a problem with a discord bot, here's the script:我遇到了一个不和谐机器人的问题,这是脚本:

    def send():
        url = "https://discordapp.com/api/webhooks/762125650546131005/lgYkjh-ILrag2sb3nzqUZfF1sg2mN2a0QeABaUq9dwl7qBTNL4EqWV00K62xWZ8_sNQ5"
        data = {}
        data["content"] = ""
        data["username"] = "Suggestions"

        data["embeds"] = []
        embed = {}

        embed["description"] = "**Author** » <@" + str(message.author.id) + ">\n **Suggestion** » " + str(args)
        embed["title"] = "**New Suggestion!**"
        data["embeds"].append(embed)

        result = requests.post(url, data=json.dumps(data), headers={"Content-Type": "application/json"})

    send()

    await message.author.send("Thank you for your suggestion! We will look into it as soon as possible and will message you if it will be used.")

When I do ";suggestion fix bugs" it just sends to the webhook "fix" which is only the first word and I am struggling to fix this.当我执行“;suggestion fix bugs”时,它只是发送到 webhook“fix”,这只是第一个词,我正在努力解决这个问题。 Please may someone help?请问有人可以帮忙吗?

Don't use requests with discord.py, it is sync and will block your bot, use a discord.Webhook with aiohttp to send a discord.Embed不要使用discord.py请求时,它是同步,并会阻止你的机器人,使用discord.Webhookaiohttp发送discord.Embed

Example:例子:

from aiohttp import ClientSession

async with ClientSession() as session:
    wh = discord.Webhook.from_url("<webhook url>", adapter=discord.AsyncWebhookAdapter(session))

    e = discord.Embed()
    e.title = "Hello I am an Embed"
    ...

    await wh.send(embed=e)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM