It shows rating bars which represents Like/Dislike rating ratio.
< Обсуждения YouTube RatingBars (Like/Dislike Rating)
ひっとして、YouTubeにユーザー登録やログインなどせずにご利用中でしょうか。
本来はこちらのメニューから再登録ができるのですが、ログインしていないと、このようにメニューに本スクリプトの項目が反映されないということを、ちょうど本日確認したところでした。
この問題は、できれば本日中にアップデートして、解消の予定です。 アップデートしたらまたこちらに書き込みさせていただきます。
この問題ではないとすれば、もう少しお話をお聞かせください。 ○○はできるけど、○○しても○○にならない、○○がおかしい、などなど。
変更する方法、あったのですね。ありがとうございます。ログインユーザーではありましたが、気づいていませんでした。
APIキーの変更方法を知りたかった理由についてですが、実は自分用のAPIキーを設定しているのにバーが表示されない動画が出現したためです。
「1つのAPIキーあたりおおよそ1日あたり3000画面分で制限に達する」とのことですが、添付画像の通り、今まで1日あたり500クエリすら超えたことがありません。(1画面=1クエリ、なのかどうかはわかりませんが) 5月31日からこの症状が現れています。
さきほどスクリプトをバージョンアップしました。 が、これは先にご案内の通り、YouTubeへの非ログインユーザーで起きていたメニュー表示に関する問題の修正です。
KTPさんからいただいたフィードバックのやり取りもご覧いただいているようなので内容が重複してしまいますが、 https://greasyfork.org/ja/forum/discussion/80437/x
症状の実態の可能性として、「すでに本スクリプトによる新規データの取得は機能しておらず、現在もバーが表示される動画は、本スクリプトが過去に取得したデータを30日間保存しているおかげに過ぎない」ということが考えられます。可能性ありそうでしょうか。
1日あたり3000画面分というのは、本スクリプトは1リクエストで最大48の動画のレーティング情報をYouTubeから得ているのですが、これが1リクエストあたりYouTubeの取り決めで「3単位(=Queries)」を消費するので、通常割り当てられる 10,000 Queries per day に達するのにおよそ3000回のリクエストという計算です。(1画面に48以上の動画サムネイルが表示されていることはあまりないと思うので、実質1画面あたり1リクエストとみなしています)
もしお手間でなければ、そしてスクリプトについて知識をお持ちであれば、コード冒頭の const DEBUG = false;
の false
を true
に編集していただいた上で、問題が発生した画面で [F12] キーを押して開発者ツールを開いていただき、どんな内容が表示されているかスクリーンショットなどで教えていただけると、助かります。
でも、これはめちゃくちゃお手間だと思うので、無理にお願いはいたしません。
引き続き調べて参ります。 (できればわたし自身が現象に遭遇すればいいのですが・・・今のところ平和です)
const DEBUG = true;
に設定し、該当のページでF12キーを押した直後です。
ありがとうございます。そして懺悔します。 「コンソール」をクリックした状態が見たかったのをお伝えし忘れていました・・・すみません・・・
先程と同じページ(ナショナルジオグラフィック)です。
ありがとうございます。 たいへん参考になりました。
直接関係しているかは不明ですが、いただいたスクリーンショットをきっかけに、少なくとも新たなバグを発見することができました。 チャンネルページは通常 youtube.com/channel/(something) 形式ですが、古くからあるチャンネルの中には youtube.com/user/(something) 形式のものがあるようで、それらのページを訪れると、再読込するまで以降のデータ取得ができなくなっていたようです。また、チャンネルページ以外でも、想定外のURL形式を訪れた際に発生していた可能性がありました。先ほど更新した最新 4.0.6 で、このバグは解消しています。
仮に雷風さんの問題が最新版でもなお解決しないとすれば、またしても面倒なお願いなのですが、真相に切り込むには先と同様にコードを改めて const DEBUG = true;
にしていただいた上で、357行目付近にあるコードを
getRatings: function(ids){
fetch(site.get.api(ids))
↓
getRatings: function(ids){
log(ids, site.get.api(ids), configs.apiKey);
fetch(site.get.api(ids))
のように1行追加していただき、同じようにスクリーンショットをいただけると助かります。 (例によって大変なご面倒なので、むずかしければ、スルーしてください!)
ありがとうございます。事態が正確に把握できました。
ご利用の BlockTube が悪さをしています。 5/31 に更新されたBlockTubeの最新 v0.3.12 で、YouTube内の標準的な仕様に手が加えられたのが原因です。他の拡張やスクリプトに干渉しうることを想定していなかったのでしょう。
これはわたしのスクリプトだけでなく、他のスクリプトや拡張も影響を受けうるので、BlockTubeの開発者に報告しておきます。何も失うことなく対応できるはずなので、おそらく改善してくれると思います。
とは言え改善がいつになるかわからないので、本来は必要ないはずの作業でちょっとくやしいですが(笑)、わたしのスクリプトでもこの影響を回避できるように更新したいと思います。
さしあたって、もしお急ぎであれば BlockTube を v0.3.11 にバージョンダウンしていただくか、利用を停止していただくなりすれば、本スクリプトの問題は解消すると思います。
更新したらまたお知らせします。
更新しました。ご確認いただけると幸いです。
症状が解消されました。対応ありがとうございます。 BlockTube側でも更新が行われたようです。
よかった!安心しました!
BlockTubeの更新も確認できました。 https://github.com/amitbl/blocktube/issues/66
APIキーの再設定ができない
自分のAPIキーを最初に設定したのはいいのですが、後からAPIキーを変更することができません。