iT邦幫忙

2023 iThome 鐵人賽

DAY 7
0
Software Development

使用discord.py開發自己的機器人系列 第 7

[Day7] 查看username、id、加入時間及身份組(上)

  • 分享至 

  • xImage
  •  

今天要來寫的是在管理用機器人很常會有的基礎功能,查看username、id及加入時間。
首先要先來介紹會用到的轉換器commands.MemberConverter

commands.MemberConverter:

commands.MemberConverter是Discord.py中的一個參數轉換器,可以用來將命令的參數轉換成Member物件

  1. 支援的轉換類型
    MemberConverter可以接受多種格式的參數並轉換為Member物件,包括:
  • 使用者mention - @使用者名稱
  • 使用者ID - 123456789123456789
  • 使用者名稱 + discriminator - 使用者名稱#1234
    使用者名稱 - 使用者名稱
  • 使用者物件 - 已經是Member物件就直接返回
  1. 查找User的順序如下(順序由上至下)
    進行以下步驟來查找使用者並返回Member:
  • 檢查是否已經是Member物件,是就直接返回 -嘗試通過ID查找使用者
  • 嘗試通過mention查找使用者
  • 嘗試通過名稱+discriminator查找
  • 嘗試只通過名稱查找
  1. 錯誤處理
    如果所有查找都失敗,會丟出commands.BadArgument錯誤,命令也不會執行。
  2. 造成的錯誤
  • BadArgument:參數未傳遞或找不到成員。
  • HTTPException:獲取用戶失敗。
  1. 應用案例
    MemberConverter非常適合用在需要取得使用者資訊的命令中,例如userinfo、kick、ban等等。

上一篇
[Day6] 基本discord機器人程式架構
下一篇
[Day8]查看username、id、加入時間及身份組(下)
系列文
使用discord.py開發自己的機器人30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言