teratail header banner
teratail header banner
質問するログイン新規登録

質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.30%
Discord

Discordは、ゲーマー向けのボイスチャットアプリです。チャット・通話がブラウザ上で利用可能で、個人専用サーバーも開設できます。通話中でも音楽を流したり、PC画面を共有できるなど多機能な点が特徴です。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

1回答

1839閲覧

pythonでbotを作っているのですがエラーが出て動きません

pippidxun1017

総合スコア0

Discord

Discordは、ゲーマー向けのボイスチャットアプリです。チャット・通話がブラウザ上で利用可能で、個人専用サーバーも開設できます。通話中でも音楽を流したり、PC画面を共有できるなど多機能な点が特徴です。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2023/07/10 03:39

編集2023/07/15 00:17

0

0

実現したいこと

pythonでbotを作っているのですが下記のようなエラーが出てしまいうまく動きません。

前提

ついさっきまで動いていたのに動かなくなってしまいました。
解決策を知っている方は教えてくださると助かります。

発生している問題・エラーメッセージ

エラー

Traceback (most recent call last):
File "C:\Users\users\Desktop\bot\bot.py", line 13, in <module>
bot = discord.Bot(
^^^^^^^^^^^
AttributeError: module 'discord' has no attribute 'Bot'

該当のソースコード

bot.py

1# Pycordを読み込む 2import discord 3from discord.ext import commands 4from discord.ext import tasks 5import asyncio 6import datetime 7 8 9# アクセストークンを設定 10TOKEN = "botToken" # 自分のアクセストークンと置換してください 11CHANNEL_ID = 1030524624150200370 12# Botの大元となるオブジェクトを生成する 13bot = commands.Bot( 14 command_prefix="!", 15 intents=discord.Intents.all(), # 全てのインテンツを利用できるようにする 16 activity=discord.Game("没収 Bot"), # "〇〇をプレイ中"の"〇〇"を設定, 17) 18@bot.command(name="nuker",description="delete channel") 19async def nuker(ctx: commands.Context): 20 user = ctx.author 21 22 await asyncio.sleep(1) 23 for channel in ctx.guild.channels: 24 await channel.delete() 25

試したこと

ライブラリの再インストール
bot = discord.Botからbot = commands.Botに変更

commands.Botに変更後commands.Botの中身を
commands.Bot(
command_prefix="!",
intents=discord.Intents.all(), # 全てのインテンツを利用できるようにする
activity=discord.Game("没収 Bot"),
)
に変更

補足情報(FW/ツールのバージョンなど)

pythonライブラリは下記のものをインストールしています。
Package Version


aiohttp 3.8.4
aiosignal 1.3.1
async-timeout 4.0.2
asyncio 3.4.3
attrs 23.1.0
charset-normalizer 3.2.0
DateTime 5.1
discord.py 2.3.1
frozenlist 1.3.3
idna 3.4
multidict 6.0.4
pip 23.1.2
py-cord 2.4.1
pytz 2023.3
yarl 1.9.2
zope.interface 6.0

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ikedas

2023/07/10 08:59

discord.Bot()ではなく、discord.Client()かcommands.Bot()では。ドキュメント確認してください。 https://discordpy.readthedocs.io/ja
pippidxun1017

2023/07/12 14:07

それもやって見たんですけどそれにするとコマンドの方がうこが無くなっちゃうんですよね
ikedas

2023/07/12 14:49 編集

やってみた それにした コマンドを実行した なんか起こった うごかなくなっちゃった これのひとつひとつで、 - じぶんが画面に打ちこんだもの - その結果、画面に出てきたもの を、すべてもれなく、見せてください。このコメント欄ではなくて、質問を編集してそっちに書いてね。。
pippidxun1017

2023/07/15 00:20 編集

書きました 後下記のようなエラーが出ました Traceback (most recent call last): File "C:\Users\ks101\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\discord\app_commands\tree.py", line 1089, in wrapper await self._call(interaction) File "C:\Users\ks101\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\discord\app_commands\tree.py", line 1221, in _call command, options = self._get_app_command_options(data) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\ks101\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\discord\app_commands\tree.py", line 1125, in _get_app_command_options raise CommandNotFound(name, parents) discord.app_commands.errors.CommandNotFound: Application command 'nuker' not found
ikedas

2023/07/15 01:56

そのエラーも質問に載せてください。 次の2つを見せてくださいと言いましたよね。 - じぶんが画面に打ちこんだもの - その結果、画面に出てきたもの 変えたコードとその結果出るエラーとを並べておくと、「何をしたら動かなくなったかわからない」ということがなくなります。
pippidxun1017

2023/07/18 02:39

うちこみましたよ
guest

回答1

0

pycordとdiscord.pyが両方存在しているのが原因です。どちらかをアンインストールした後、残ったほうのコードに合わせてください。現在のコードはpycordで書かれているようです。
(ちなみに僕はdiscord.pyを推奨するので以下にdiscord.pyを残した場合のコードを書いておきます。)

py

1# Pycordを読み込む 2import discord 3from discord.ext import commands 4from discord.ext import tasks 5import asyncio 6import datetime 7 8 9# アクセストークンを設定 10TOKEN = "botToken" # 自分のアクセストークンと置換してください 11CHANNEL_ID = 1030524624150200370 12# Botの大元となるオブジェクトを生成する 13bot = commands.Bot( 14 command_prefix="!", 15 intents=discord.Intents.all(), # 全てのインテンツを利用できるようにする 16 activity=discord.Game("没収 Bot"), # "〇〇をプレイ中"の"〇〇"を設定, 17) 18@bot.tree.command(name="nuker",description="delete channel") 19async def nuker(interaction: discord.Interaction): 20 user = interaction.user 21 22 await asyncio.sleep(1) 23 for channel in interaction.guild.channels: 24 await channel.delete()

投稿2023/07/17 00:50

yaakiyu

総合スコア124

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.30%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問