前提・実現したいこと
以下のサイトのコードを使ってdiscordの投票botを作成したいです。
初心者ですがよろしくお願いします。
https://foolean.net/p/1688
発生している問題・エラーメッセージ
C:\Users\xxx\Desktop\bot>yyy.py Traceback (most recent call last): File "C:\Users\xxx\Desktop\bot\yyy.py", line 3, in <module> File "C:\Users\xxx\AppData\Local\Programs\Python\Python37\lib\site-packag es\discord\__init__.py", line 20, in <module> from .client import Client, AppInfo, ChannelPermissions File "C:\Users\xxx\AppData\Local\Programs\Python\Python37\lib\site-packag es\discord\client.py", line 38, in <module> from .state import ConnectionState File "C:\Users\xxx\AppData\Local\Programs\Python\Python37\lib\site-packag es\discord\state.py", line 36, in <module> from . import utils, compat File "C:\Users\xxx\AppData\Local\Programs\Python\Python37\lib\site-packag es\discord\compat.py", line 32 create_task = asyncio.async ^ SyntaxError: invalid syntax
該当のソースコード
Python
1#coding: utf-8 2 3import discord 4client = discord.Client() 5 6TOKEN = "ご自身のトーーーークン" 7 8# 各ユーザのリアクション(スタンプ)を保存して置くためのdict 9from collections import defaultdict 10user_reaction_dic = defaultdict(dict) 11 12# リアクションが追加された時の処理 13@client.event 14async def on_reaction_add(reaction, user): 15 16 # リアクションが追加されたメッセージの取得 17 message = reaction.message 18 19 # この投稿に対してこれまでにリアクションしたかを判定 20 if message.id not in user_reaction_dic[user.id]: 21 # 新しく登録された絵文字なので情報を保存しておく 22 user_reaction_dic[user.id][message.id] = reaction.emoji 23 else: 24 # 前回の絵文字を削除して更新する 25 await client.remove_reaction(message, user_reaction_dic[user.id][message.id], user) 26 user_reaction_dic[user.id][message.id] = reaction.emoji 27 28# リアクションが削除された時の処理 29@client.event 30async def on_reaction_remove(reaction, user): 31 32 # リアクションが追加されたメッセージの取得 33 message = reaction.message 34 35 # 保存してあるリアクション情報と一致したらそれを削除しておく 36 if user_reaction_dic[user.id][message.id] == reaction.emoji: 37 del user_reaction_dic[user.id][message.id] 38 39# BOTを実行 40client.run(TOKEN)
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
回答いただけたお二方、ありがとうございます。Pythonのバージョンを落として再度実行したところ、エラーメッセージがかなり短くなりました。
Python
1Traceback (most recent call last): 2 File "C:\Users\xxx\Desktop\bot\yyy.py", line 3, in <module> 3ModuleNotFoundError: No module named 'discord'
discord.pyはインストールしてありますがどう使えばよいかわかりません。無知ですみませんが教えていただけると助かります。
[追記]
コマンドプロンプトからpip install -U discord.pyを入力したところ
Traceback (most recent call last): File "C:\Users\xxxi\Desktop\Python_study\yyy.py", line 40, in <module> File "C:\Develop\Python3.6.4\lib\site-packages\discord\client.py", line 519, i n run self.loop.run_until_complete(self.start(*args, **kwargs)) File "C:\Develop\Python3.6.4\lib\asyncio\base_events.py", line 467, in run_unt il_complete return future.result() File "C:\Develop\Python3.6.4\lib\site-packages\discord\client.py", line 490, i n start yield from self.login(*args, **kwargs) File "C:\Develop\Python3.6.4\lib\site-packages\discord\client.py", line 416, i n login yield from getattr(self, '_login_' + str(n))(*args, **kwargs) File "C:\Develop\Python3.6.4\lib\site-packages\discord\client.py", line 346, i n _login_1 data = yield from self.http.static_login(token, bot=is_bot) File "C:\Develop\Python3.6.4\lib\site-packages\discord\http.py", line 258, in static_login data = yield from self.request(Route('GET', '/users/@me')) File "C:\Develop\Python3.6.4\lib\site-packages\discord\http.py", line 121, in request headers['Authorization'] = 'Bot ' + self.token if self.bot_token else self.t oken TypeError: must be str, not int Unclosed client session client_session: <aiohttp.client.ClientSession object at 0x000000000387FF28>
というメッセージが出てきました。助けてください。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。