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

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

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

FlaskはPython用のマイクロフレームワークであり、Werkzeug・Jinja 2・good intentionsをベースにしています。

YouTube

YouTubeとはユーザーがビデオをアップロード・共有・閲覧できるビデオ共有ウェブサイトです。

YouTube API

YouTube APIはYouTubeのビデオコンテンツと機能性をウェブサイト、アプリケーション、デバイスに統合することを可能にします。

Python

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

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

Q&A

解決済

1回答

2245閲覧

youtubeチャンネルからすべての動画の高評価低評価数を取得したい

shosinnshadesu

総合スコア93

Flask

FlaskはPython用のマイクロフレームワークであり、Werkzeug・Jinja 2・good intentionsをベースにしています。

YouTube

YouTubeとはユーザーがビデオをアップロード・共有・閲覧できるビデオ共有ウェブサイトです。

YouTube API

YouTube APIはYouTubeのビデオコンテンツと機能性をウェブサイト、アプリケーション、デバイスに統合することを可能にします。

Python

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

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

0グッド

1クリップ

投稿2020/09/25 02:43

編集2020/09/25 02:48

youtubeチャンネルをユーザーが調べて、そのチャンネルのすべての動画の高評価低評価数を取得したいです。

python

1from flask import Flask, request, render_template 2import requests 3import json 4 5app = Flask(__name__) 6app.secret_key = 'asdkbvusdv' 7API_KEY = 'AIzaSyCO_82OMZjzaIJrBHB1oQIVjHVV7mjs_2g' 8 9 10@app.route('/') 11def index(): 12 return render_template('index.html') 13 14@app.route('/search', methods=['POST']) 15def search(): 16 channel_right = request.form.get('channel_right') 17 def get_channel_id(): 18 url = f'https://www.googleapis.com/youtube/v3/channels?part=id&forUsername={channel_right}&key={API_KEY}' 19 json_url = requests.get(url) 20 data = json.loads(json_url.text) 21 try: 22 data = data["items"][0]["id"] 23 except: 24 data = None 25 return data 26 27 if get_channel_id() == None: 28 channel_url = request.form.get('channel_right') 29 else: 30 channel_url = get_channel_id() 31 32 def get_channel_name(): 33 url = f'https://www.googleapis.com/youtube/v3/search?type=channel&part=snippet&q={channel_url}&key={API_KEY}' 34 json_url = requests.get(url) 35 data = json.loads(json_url.text) 36 try: 37 data = data["items"][0]["snippet"]["channelTitle"] 38 except: 39 data = None 40 return data 41 42 def get_bestbad(): 43 44 45 channel_name = get_channel_name() 46 return render_template( 47 'users.html', 48 channel_name = channel_name, 49 bestbad = bestbad, 50 bestgood = bestgood, 51 bestbadratio = bestbadratio, 52 bestgoodratio = bestgoodratio, 53 allgoodratio = allgoodratio, 54 allbadratio = allbadratio) 55 56 57if __name__ == '__main__': 58 app.run(debug=True, host='127.0.0.1')

上のようにpythonでコードを書いているのですが、ユーザーが検索してそのチャンネルの名前を取得することはできるようになりました。
次に、そのチャンネルの動画をすべて取得して、その動画それぞれの高評価低評価数を取得したいのですが、概要がわかりません。

現在考えているのは、すべての動画のidを取得してidから高評価低評価数を取得するものです。
しかしそれだと、maxresultsに達してしまうためできないと考えられます。

どなたかどのように進めればよいのか教えていただきたいです。

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

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

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

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

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

sfdust

2020/09/25 02:57 編集

取得対象しようとしているチャンネルでやるとmaxresultsに達するというならば、quotaの増枠申請をすればいいだけではないのでしょうか? 増枠申請の仕方かわからないということでしょうか?
sfdust

2020/09/25 05:54 編集

searchよりもquota消費を抑えてチャンネル内の動画IDの一覧を取得する方法があればそれも答えになりうるという理解でよろしいでしょうか?
sfdust

2020/09/25 05:52

増枠は無料です。youtube apiのquota増枠で料金を取られたという事例は見たことがありません。
shosinnshadesu

2020/09/25 06:05

了解です searchよりもquota消費を抑えてチャンネル内の動画IDの一覧を取得する方法があればそれも答えになりうるという理解でよろしいでしょうか? この答えを知りたいです。
guest

回答1

0

ベストアンサー

高評価、低評価、お気に入り登録数はVideo毎での情報取得
Videos
でしかないから1件づつ処理しないと

他の方も書かれている通りquotaの増枠申請しないとすぐにいっぱいになるよ

一応
Search: list
のorder指定でratingはあるけど...

投稿2020/09/25 04:59

kuma_kuma_

総合スコア2506

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問