0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

YouTubeでサジェストされる関連動画を非表示にする拡張機能を開発してみた

Posted at

はじめに

世の中には仕事や研究の合間に「ちょっとYouTubeでも見て休憩しよう」とブラウザを開き、気がついたら貴重な数時間を無駄にしていたなんていう愚行を犯す人がいます。そうです、私のことです。
YouTubeではユーザーの興味を持ちそうな関連動画をサジェストし、できる限りサイト内にとどまらせようとする悪魔の仕組みが備わっています。今回はこれを非表示する拡張機能を作ってみました。

作ったもの

成果物はchromeウェブストアに公開しております。

機能

主な機能としては

  • サイドバーや動画のエンド画面にサジェストされる関連動画を非表示
  • 自動再生機能のオフ

の2つになります。こんな感じ。
スクリーンショット 2025-03-15 15.11.42.png

注意として、動画のエンドカードは非表示にできません。今後対応していきたいと思います。

サジェスト動画を非表示する処理

そこまで複雑な処理は必要としません。JavaScriptで要素を取得して、CSSをあてるだけです。

非表示したい要素を取得します。

const getRelatedElements = () => {
    const related = document.getElementById('related');
    const secondaryInner = document.getElementById('secondary-inner');
    const endScreen = document.querySelector('.ytp-endscreen-content');

    return [related, secondaryInner, endScreen].filter(Boolean);
};

取得した要素にdisplayプロパティにnoneを適応します。

function hideRelatedVideos() {
    const elements = getRelatedElements();
    elements.forEach(element => {
        if (element) {
            element.style.display = 'none';
        }
    });
}

感想

アウトプット学習の一環として、拡張機能を開発・公開するところまでをやってみました。
拡張機能開発なんて遠い存在だと思っていましたが、シンプルなものであれば案外あっさりできました。心理的ハードルがかなり下がりましたね。
アイディアがあれば、今後もやっていきたいと思います。

参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?