slackで、現在時刻を知らせてくれて、時間帯によって異なるメッセージを発するボットを作ろうとしています。
times.pyのほうで、
from slackbot.bot import respond_to from slackbot.bot import listen_to import datetime import time @listen_to('いま何時?') def res_time(message): dt_now=datetime.datetime.now() time_str=dt_now.strftime('%H時%M分ですよ。') message.send(time_str) if dt_now.hour==12: res= "そろそろお昼食べたいね。" elif dt_now.hour==15: res= "おやつ食べたいか?" else: res= "少し休んだら" time.sleep(1) message.send(res)
と入力しました。これを、プログラムを実行させるファイルrun.pyで、
from slackbot.bot import Bot def main(): bot=Bot() bot.run() if __name__ == "__main__": main()
によってrun module をかけたところ、
Failed to import plugins.time Traceback (most recent call last): File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/slackbot/manager.py", line 60, in _load_plugins import_module(module) File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/importlib/__init__.py", line 127, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "<frozen importlib._bootstrap>", line 1030, in _gcd_import File "<frozen importlib._bootstrap>", line 1007, in _find_and_load File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked File "<frozen importlib._bootstrap>", line 680, in _load_unlocked File "<frozen importlib._bootstrap_external>", line 846, in exec_module File "<frozen importlib._bootstrap_external>", line 983, in get_code File "<frozen importlib._bootstrap_external>", line 913, in source_to_code File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed File "/Users/koji/Desktop/plugins/time.py", line 15 res="そろそろお昼食べたいね。" ^ IndentationError: expected an indented block
というエラーが発生してしまいました。
これは何が原因でこのようなエラーになっているのでしょうか?
また、どうすれば解決しますか?
どなたかアドバイスお願いいたします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/09/17 06:51
2021/09/17 08:01