前提・実現したいこと
discord.pyでbotを作成しています。
guildを作成したくてguild=self.bot.guildとしましたがエラーが出ます。
どうやったらguildを作れるのでしょうか?
発生している問題・エラーメッセージ
AttributeError: 'ApexBot' object has no attribute 'guild'
該当のソースコード
Python
1from pprint import pprint 2import os 3import sys 4import json 5import requests 6import discord 7import traceback 8from discord.ext import commands 9from discord.ext import tasks 10from cogs import testcog 11 12 13# 自分のBotのアクセストークンに置き換えてください 14TOKEN = '--------------------------------------' 15INITIAL_EXTENSIONS = [ 16 'cogs.testcog' 17] 18 19class ApexBot(commands.Bot): 20 # MyBotのコンストラクタ。 21 def __init__(self, *args,**kwargs): 22 # スーパークラスのコンストラクタに値を渡して実行。 23 super().__init__(*args,**kwargs) 24 25 # INITIAL_COGSに格納されている名前から、コグを読み込む。 26 # エラーが発生した場合は、エラー内容を表示。 27 for cog in INITIAL_EXTENSIONS: 28 try: 29 self.load_extension(cog) 30 except Exception: 31 traceback.print_exc() 32 33 34 # Botの準備完了時に呼び出されるイベント 35 async def on_ready(self): 36 print('-----') 37 print(self.user.name) 38 print(self.user.id) 39 print('-----') 40 41 42 43if __name__=='__main__': 44 intents1=discord.Intents.default() 45 intents1.members=True 46 bot=ApexBot(command_prefix='!',intents=intents1) 47 bot.run(TOKEN)
Python
1import os 2import sys 3import json 4import requests 5import traceback 6import discord 7import schedule 8import time 9import asyncio 10from discord.ext import commands 11from discord.ext import tasks 12 13 14class TestCog(commands.Cog): 15 16 def __init__(self,bot): 17 self.bot=bot 18 19 20 def cog_unload(self): 21 self.set.cancel() 22 23 @tasks.loop(minutes=1) 24 async def set(self): 25 guild=self.bot.guild 26 member=guild.get_member(val) 27 28 29 @set.before_loop 30 async def before_loop(self): 31 print('waiting....') 32 await self.bot.wait_until_ready() 33 34 @commands.command() 35 async def start(self,ctx): 36 print("start") 37 self.set.start() 38 39 40 @commands.command() 41 async def stop(self,ctx): 42 print("stop") 43 self.set.stop() 44 45 def setup(bot): 46 bot.add_cog(TestCog(bot))
補足情報(FW/ツールのバージョンなど)
一つ目のコードがメインファイル、二つ目がcogファイルです。
discord.pyは最新版です。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/01/12 23:46
2021/01/13 00:29 編集
2021/01/13 04:06
2021/01/13 06:26