※ 2019/04/09のrewrite版正式リリースに伴い内容を修正しました。
discord.py を知らない方はこちらをお読みください。
Pythonで実用Discord Bot(discord.py解説)
要は
新バージョンが rewrite
旧バージョンが async
互換性はありません。
python2系/3系と同様の問題と考えてください。
呼称はGithubリポジトリのブランチ名が由来
rewrite版 について
- ドキュメント(英語) / 日本語版(翻訳中)
- 別称 v1.0.0
- 2019/04/09 にリリース
- 過去ではgithubからのみインストール可能だった
-
pip install discord.py
でインストール - python3.7に対応
- 現在解説している記事は少ない
githubからのインストール方法
pip install git+https://github.com/Rapptz/discord.py.git@rewrite#egg=discord.py[voice]
async版 について
- ドキュメント(英語)
- 別称 v0.16.12 or 旧版
- 2019/04/08 まで
pip install discord.py
でインストールできたもの -
python3.7 では動かない
- 3.4.2 から 3.6.* で動く
- 現在殆どの記事で解説されているのがこのバージョン
- 最終更新日 2017/11/13
rewrite版とasync版の仕様変更点
目立つところでは、チャンネルへのメッセージ送信の構文が変更されており、
以下のような違いがあります。
rewrite版の構文
await channel.send('Hi!')
async版の構文
await client.send_message(channel, 'Hi!')
その他詳細は公式ドキュメントに記載されています。
v1.0への移行
後書き
現在多くの記事は discord.py の async版 を扱っており、
現行版の rewrite版 に対応していません。
そのため混乱が多く、理解を得るための記事が必要と考え執筆しました。
以後説明が面倒な際はこちらの記事を投げてください。