我正在Python 3.6中使用www.example.com库开发一个Discord botdiscord.py,在尝试从我创建的线程向特定通道发送消息时遇到了问题。
基本上,我有一些线程监视网站,我想调用一个函数(我传递给线程),发送消息到一个特定的渠道时,我注意到网站上的变化。
我最初尝试不使用async/await直接调用client.send_message()
,但是根本不起作用,所以我编写了async/await函数来发送消息(测试过了,效果很好)但是从线程调用它时又遇到了问题,所以我最终将bot客户端传递给了我的线程,并调用了self.bot_client.loop.create_task(self.sendmsgfunction(msg))
。(发送消息大约需要15秒,而且无论如何这可能不是正确的方法)与机器人使用通常的@bot.event
函数回复消息所需的时间相比。
我已经尝试过用asyncio创建一个事件循环,然后调用函数,但是我再次以错误告终。
有什么想法吗?
3条答案
按热度按时间qhhrdooz1#
您可以使用
asyncio.run()
来运行异步函数,如下所示:kx7yvsdv2#
要在Discord上更改某个人的昵称,您可以从Mac或PC登录Discord帐户,然后在左侧栏中选择所选的服务器。在最右侧的面板中,有服务器成员列表,只需右键单击您的用户名并选择编辑服务器配置文件选项。2然后在文本框中输入您的新昵称并点击保存更改选项。要了解更多关于这个主题的信息,你可以在这里轻松学习how to change your nickname on discord.你也可以在该服务器的聊天中使用斜杠命令“/nick”后跟你选择的昵称,轻松地编辑和更改名称.
r6vfmomb3#
如果你想发送一条消息到一个特定的通道,首先你应该得到通道对象。
那你就