パk...参考ボット
以下で紹介されているコードを丸パk...大幅に参考にさせていただきました。
ホロライブメンバーの配信予定を取得して配信開始時刻に通知するDiscord botを作った #Python3 - Qiita
このページで紹介しているボット(Webhook)はYouTubeAPIは使用せず、ホロジュールの配信予定時刻表示を読み取り、配信の10分前に告知する機能のみにしました。
ダウンロード
holo_discord_webhook
バージョン0.2.0 2024/11/09更新
GitHubページ
ホロジュールの配信予定時刻表示を読み取り、配信の10分前に告知するDiscord向けWebhookボットです。
バージョン情報
0.2.0
2024/11/09
- 言語設定をガバ実装しました(とりあえず日本語と英語)
- 言語設定を作ったため、コンソールメッセージも言語設定に基づくように
- AMPM表示設定を実装しました(海外ニキ向け)
- 更新間隔を実装しました(癖あり)
- JST(UTC+9:00)以外の地域の人のためにタイムゾーン表記を追加(JST以外ならメッセージに表示)
- ホロライブメンバーデータを外部ファイルにしました
- FLOW GLOW5人の画像リンク間違いを修正
0.1.2
2024/11/07
- 「holoilve DEV_IS FLOW GLOW」の5人と公式チャンネルを追記
- 一部画像リンク切れを修正
0.1.1
2024/06/22
- 「hololive English -Justice-」の情報追加(4人)
- 公式チャンネルの一部情報を追加・整理
0.1
2023/12/12
- 初期リリースバージョン
スクリーンショット
「10分後に配信開始予定!」と時刻、URLが、配信予定10分前に送信されます。同タイミングでの配信がある場合は1秒ごとに送信され続けます。
必要環境
Python 3以降 (テスト環境はPython 3.10.5)
インストールが必要なPythonライブラリ
Requests
Beautiful Soup 4
初期セットアップ
まずはDiscordのWebhook URLを取得してください。
- 自分の所有する(または権限のある)サーバー設定を開きます。
- 連携サービス、ウェブフックの確認を開きます。
- 新しいウェブフックを押し、ウェブフックを新規作成します。
- 新規作成されたウェブフックを選択し、管理しやすい名前に変更、配信告知を投稿するチャンネルを選択します。
- 最後に「ウェブフックURLをコピー」を押し、URLを取得します。
webhook = https://discord.com/api/webhooks/数字が書いてある/文字列がならんでいる
ペーストした後は保存し、準備完了です。
起動方法は環境によるため割愛します。
「holo_discord_webhook.py」が本体です。
いらない配信通知
更新時点での在籍しているホロライブプロダクションのメンバー(ホロライブ、ホロスターズ、hololive_DEVISやEN、IDなど全て)のチャンネル全てがリストに含まれています。
「holomen.json」から、ライバーの配列を削除すれば、通知がスキップされます。
付属のバッチファイル
一部のWindows 10環境とWindows 11以降の環境では付属の「run.bat」を使用して起動できます。
具体的に言うと古いコマンドプロンプトではなく、新しい「ターミナル」アプリが起動する環境です。
「Python」コマンドのみで起動するPythonバージョンと環境を確認の上、使用してください。
バージョン指定が必要な場合はその都度バッチファイルを編集してください。
Windows以外の環境の場合は環境別のコマンドで起動してください(「Python3 ./holo_discord_webhook.py」など)。