相关疑难解决方法(0)

如何加入服务器?

我正在尝试用python设置一个discord bot.我有一个预先存在的discord服务器,我希望机器人加入,但我很难这样做.

import discord
import asyncio
import logging

logging.basicConfig(level=logging.INFO)

client = discord.Client()

@client.event
async def on_ready():
    print('Logged in as')
    print(client.user.name)
    print(client.user.id)
    print('------')
    print(client)


@client.event
async def on_message(message):
    print(message)
    if message.content.startswith('!test'):
        counter = 0
        tmp = await client.send_message(message.channel, 'Calculating messages...')
        async for log in client.logs_from(message.channel, limit=100):
            if log.author == message.author:
                counter += 1

        await client.edit_message(tmp, 'You have {} messages.'.format(counter))
    elif message.content.startswith('!sleep'):
        await asyncio.sleep(5)
        await client.send_message(message.channel, 'Done sleeping')

client.run('token')
Run Code Online (Sandbox Code Playgroud)

这基本上是GitHub页面上给出的基本discord.py脚本.但是,我似乎无法弄清楚如何让它实际加入我的服务器.将此行插入on_ready函数时:

server = await client.accept_invite('instant-invite-code')
Run Code Online (Sandbox Code Playgroud)

将"即时邀请代码"替换为我的实际即时邀请代码(我尝试了discord.gg/code和代码),我得到了

discord.errors.Forbidden: FORBIDDEN (status code: 403): …
Run Code Online (Sandbox Code Playgroud)

python discord discord.py

26
推荐指数
1
解决办法
8万
查看次数

如何使用 discord.py 列出不和谐服务器中的所有成员?

我正在编写一个不和谐的机器人,当我尝试使用 on_message 事件中的命令 !members 从服务器中提取所有成员时遇到了这个错误:

elif message.content.startswith('!members'):
    x = server.Server.members
    for member in x:
        print(member)
Run Code Online (Sandbox Code Playgroud)

我希望此命令拉出所有成员并在控制台中将它们打印出来,但出现错误

类型错误:“属性”对象不可迭代

当我在不和谐频道中输入命令时。任何人都可以帮我列出频道中我可以拥有的所有成员以供进一步使用吗?

python server discord discord.py

6
推荐指数
1
解决办法
4万
查看次数

标签 统计

discord ×2

discord.py ×2

python ×2

server ×1