特定のYouTubeチャンネルでライブ配信をしている場合は、サイト上で埋め込んでいるYouTubeのライブ動画を表示し、ライブ配信をしていない場合は、ライブ配信をしていない等のメッセージを出して埋め込んでいる動画(iframe要素)を隠すようなサイトをflaskで作成したいです。
YouTube Data API を用いてflaskで処理を行わせようという作戦で作成を試みました。
しかし、ライブ配信のステータス情報を取得する方法に関する記事が極端に少ないため、コードの書き方が全く分からず、詰んでいる状態です。
また、YouTube Data APIとflaskの連携?方法も情報が少ないために、こちらもコードの書き方がわからず、詰んでいる状況です。
具体的に、サンプルコードを示していただけるととてもありがたいです。
ご指導の程、よろしくお願いします。
自力で思いついたところは、以下のところまでです。
*cssのclass名をflaskで切り替える形で表示・非表示を実現するつもりです。
python (質問に関係のない部分は、見やすくするために書いていません。)
python
1#YouTubeAPIの呼び出しもいまいち理解できてないです。2#flaskの扱い方は、基本的なことは理解しているつもりでいます。3#YouTube Data APIとの連携の部分の書き方がわからない状態です。4#こんな状態で質問するなと思う方もいらっしゃるともいますが、ご指導の程よろしくお願いします。5@app.route('/', methods=['GET']):6def index():7... #ここら辺の処理の書き方が全然わかりません💦8 if ライブ配信をしていたら:9 css = show 10 return render_template('index.html', css=css)11 else ライブ配信をしていなかったら:12 css = hidden 13 return render_template('index.html', css=css)14 15...
html
html
1<iframe class="{{css}}" width="560" height="315" src="https://www.youtube.com/embed/live_stream?channel=[youtubeのチャンネルid]&autoplay=1" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
css
css
1.show {2display: block;3}4.hidden {5display: none;6}
作成しようとして主に参考にした記事のURLを以下に貼っておきます。
https://coolish.hatenablog.com/entry/2019/01/24/040125
https://su-gi-rx.com/archives/6041#FlaskWeb

0 コメント