前提・実現したいこと
discord.pyでリアクションをつけたらロールを付与できるようにしたいです。 それっぽいものをいくつか試したんですけどこのようなエラーが出てしまっています... (解説的なのもつけてくれるとすごくありがたいです。)
発生している問題・エラーメッセージ
Ignoring exception in on_reaction_add Traceback (most recent call last): File "C:\Users*****\AppData\Local\Programs\Python\Python39\lib\site-packages\discord\client.py", line 343, in _run_event await coro(*args, **kwargs) TypeError: on_reaction_add() takes 1 positional argument but 2 were given
該当のソースコード
python
1import discord 2 3ID_ROLE = 885165863840387112 4CHANNEL_ID = 885165314160074785 5# 氷BOT TOKEN 6TOKEN = '*****' 7 8client = discord.Client() 9 10#ロール付与 11@client.event 12async def on_reaction_add(payload): 13 # channel_id から Channel オブジェクトを取得 14 channel = client.get_channel(payload.channel_id) 15 16 # 該当のチャンネル以外はスルー 17 if channel.id != CHANNEL_ID: 18 return 19 20 # guild_id から Guild オブジェクトを取得 21 guild = client.get_guild(payload.guild_id) 22 23 # user_id から Member オブジェクトを取得 24 member = guild.get_member(payload.user_id) 25 26 # 用意した役職IDから Role オブジェクトを取得 27 role = guild.get_role(ID_ROLE) 28 29 # リアクションを付けたメンバーに役職を付与 30 await member.add_roles(role) 31 32 # 分かりやすいように歓迎のメッセージを送る 33 await channel.send('いらっしゃいませ!') 34 35client.run(TOKEN) 36
試したこと
3日間くらい試行錯誤してみましたが駄目だったので助けてください。
https://github.com/DiscordBotPortalJP/discordbot.jp/blob/1c1220b681624ef78c3ccf599e292e1b1096166a/content/blog/5.md
ここにあるやつをコピペしました。
補足情報(FW/ツールのバージョンなど)
python3.9
discord.py
windows10
あなたの回答
tips
プレビュー