【问题标题】:Create a 'member' object in discord.py在 discord.py 中创建一个“成员”对象
【发布时间】:2020-11-19 09:32:12
【问题描述】:

我正在使用 discord.py 库开发一个不和谐机器人,它需要查询 VoiceChannel 中的成员并处理该数据。我的问题是,在开发这个机器人时,我有时无法访问拥有足够成员的语音频道来测试我的机器人。

有没有一种简单的方法可以在后端创建一个Member 对象,这样我就不必总是访问多个人连接的语音通道?比如:

import discord
new_nember = discord.Member(name="something")

【问题讨论】:

    标签: python python-3.x discord discord.py


    【解决方案1】:

    你为什么使用VoiceChannel

    要获得Member,您可以使用不同的方法:

    可以使用commands.MemberConverter.convert 完成最完整的查找,其中IDmentionname#discrimnamenickname 的查找按此顺序完成。

    例子:

    import discord, asyncio
    from discord.ext import commands
    
    client = discord.Client()
    
    @client.event
    async def on_ready():
        guild = bot.get_guild(PUT THE SERVER ID HERE)
        member1 = guild.get_member(PUT A MEMBER ID HERE)
        member2 = guild.get_member_named("User#Discrim")
        member3 = commands.converter.MemberConverter().convert("User")
    

    【讨论】:

    • 我正在使用语音频道,因为我只想使用该频道中的活跃用户,因为这将是我的机器人完成后的用例。
    • 每当我尝试初始化 Member 对象时,它都希望我提供一大堆额外的数据,但我不知道从哪里得到它。我从服务器/公会或语音频道获取成员列表没有任何问题,只需创建一个伪成员对象进行测试:文件“”,第 1 行,在 中类型错误:__init__() 缺少 3 个必需的仅关键字参数:'data'、'guild' 和 'state' ``
    猜你喜欢
    • 2019-10-24
    • 2019-11-06
    • 2022-08-22
    • 2021-05-10
    • 1970-01-01
    • 2021-03-27
    • 1970-01-01
    • 2013-06-28
    • 1970-01-01
    相关资源
    最近更新 更多