Discord - accept_invite()错误403

时间:2017-10-14 23:29:59

标签: python discord discord.py

我想知道我是否可以让机器人自动加入我的服务器但是当我编写代码然后运行它时我得到了这个例外:

Ignoring exception in on_ready
Traceback (most recent call last):
  File "C:\Users\datpe\AppData\Local\Programs\Python\Python35\lib\site-packages\discord\client.py", line 275, in _run_event
    yield from getattr(self, event)(*args, **kwargs)
  File "C:\Users\datpe\Desktop\Python Files\discord.py-async\examples\basic_bot.py", line 7, in on_ready
    await client.accept_invite('https://discord.gg/AFBEwNE')
  File "C:\Users\datpe\AppData\Local\Programs\Python\Python35\lib\site-packages\discord\client.py", line 2237, in accept_invite
    yield from self.http.accept_invite(invite_id)
  File "C:\Users\datpe\AppData\Local\Programs\Python\Python35\lib\site-packages\discord\http.py", line 133, in request
    raise Forbidden(r, data)
discord.errors.Forbidden: FORBIDDEN (status code: 403): Bots cannot use this endpoint

如您所见,我的请求已被禁止,因为Bots无法使用此端点

有人可以给我一些见解吗?

这是我的代码:

import discord

client = discord.Client()

@client.event
async def on_ready():
    await client.accept_invite('https://discord.gg/AFBEwNE')

client.run('Bot Token')

2 个答案:

答案 0 :(得分:0)

Bots无法接受邀请完全停止。您必须使用授权链接,对于在3月份之后创建的机器人,使用机器人的ID,以及使用应用程序网页中的应用程序ID之前的那些。

https://discordapp.com/oauth2/authorize?client_id=<BOTS_ID_HERE>&scope=bot

答案 1 :(得分:0)

如上所述,出于安全原因,机器人只能由具有“管理服务器”权限的成员授权。

您可以在 0Auth2 下的 discord 开发者页面中获取链接。确保勾选您希望机器人拥有的所有权限并选择机器人范围,然后复制 2auth0 链接并将其分享给需要它的人。