- YouTubeの動画IDを
.env
のVIDEO_ID
に設定しBotを起動すると、ギルドの指定したチャンネルに内容を投稿します。
- pythonの3系がインストールされていること
- gitがインストールされていること
- Discordの管理者(もしくは、Webhookを作成してもらえる立場)であること
- Botに紐づくギルドは1である必要があります(複数あった場合の対応をしていないため)
- GitHubから
git clone
するgit clone https://github.com/tetsuya-ki/discord-getyoutubechat.git
cd discord-getyoutubechat
し、実行ディレクトリにカレントディレクトリを変更しておく
- discordの開発者サイトに行き、Botを作成する
- こちらのサイトを参照: https://discordpy.readthedocs.io/ja/latest/discord.html
- 権限は
send messages
のみでOK
- DiscordのギルドにBotを登録する
- 招待リンクを作成し、それをクリックすると招待画面に行くので目的のギルドに登録する
- Botの追加はサーバー管理者ロールを保持している必要アリ(権限がない場合、ダイアログにギルドが表示されない、かも)
- 必要な情報を保管する、
.env
ファイルを作成.env.sample
をコピーし、名前を.env
にする.env
の「YOUR_DISCORD_TOKEN_IS_HERE」に、Botのトークンを入力する.env
の「DISCORD_CHANNEL_ID_IS_HERE」に送信先のDiscordのチャンネルIDを入力する.env
の「YOUR_YOUTUBE_VIDEO_ID_IS_HERE」に、YouTubeの動画IDを入力し、保存する- たとえば、「https://www.youtube.com/watch?v=dVjfdgGygo0」の場合、
dVjfdgGygo0
が動画ID
- たとえば、「https://www.youtube.com/watch?v=dVjfdgGygo0」の場合、
- (オプション)
.env
の「CSV_OUTPUT_FLAG」に、csvとして保存したくない場合、FALSE
を記載(環境変数が存在しない場合もFALSE扱い)
- pythonの仮想環境を作成
- python3 -m venv venv
- source venv/bin/activate
- 必要なパッケージを
requirements.txt
からインストールpip install -r requirements.txt
python discord-getYoutubeChat.py
で起動する(INFO:Test:bot ready.
と記載されたら起動成功)
(venv) mac-mini:discord-getYoutubeChat mac_mini$ python discord-getYoutubeChat.py WARNING:discord.client:PyNaCl is not installed, voice will NOT be supported
INFO:discord.client:logging in using static token
...(中略)...
INFO:__main__:bot ready.
Ctrl + C
: 停止(YouTubeでコメントを拾ったタイミングで、Discordに投稿せず終了される)