【问题标题】:member show profile picture wont show会员显示个人资料图片不会显示
【发布时间】:2021-03-20 20:50:39
【问题描述】:

我正在尝试创建一个显示指定用户个人资料图片的命令。没有错误,它只是不起作用。

代码:

@client.command()
async def pfp(ctx, *,member : discord.Member):

    embed = discord.Embed(colour = random.choice(mycolor))

    mylist1 = ["What a creep",
               "stalker"]

    embed.set_author(name=f"{random.choice(mylist1)}")

    embed.set_image(url=ctx.member.avatar_url)

    await ctx.send(embed=embed)

【问题讨论】:

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


    【解决方案1】:

    您的错误可能来自这一行:

    embed.set_image(url=ctx.member.avatar_url)
    

    Context 对象没有任何question 属性。如果你想要命令作者的头像:

    async def pfp(ctx, *, member: discord.Member):
        (...)
        embed.set_image(url=member.avatar_url)
        (...)
    

    另外,输入question = discord.Member 是没有用的,它只会将Member 类分配给您的question 变量。
    我还注意到mycolor 似乎未定义。

    【讨论】:

    • ctx.author.avatar_url 将显示发送 URL 的人的图像,但我希望它显示他们提到的人,例如 .pfp @example#0001
    【解决方案2】:

    好吧,我假设它只是不发送消息。我认为您想要@client.command(pass_context=True, aliases=[]) 而不是@client.command()。 pass_context 使其分配 ctx​​。

    【讨论】:

    • 在discord.py 的最新版本中,pass_context 不是必需的
    • 那没有任何意义吧-
    【解决方案3】:

    代码应该是这样的。

    @client.command(pass_context=True)
    async def pfp(ctx, *,member : discord.Member):
    
        embed = discord.Embed(colour = discord.Red())
    
        embed.set_image(url='{}'.format(member.avatar_url))
    
        await ctx.send(embed=embed
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-28
      • 2023-01-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-31
      相关资源
      最近更新 更多