YouTube - Filter Subscriptions Page

hide videos with given title keywords

当前为 2021-06-27 提交的版本,查看 最新版本

您需要先安装一个扩展,例如 篡改猴Greasemonkey暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴Userscripts ,之后才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。

您需要先安装用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name         YouTube - Filter Subscriptions Page
// @namespace    https://zachhardesty.com
// @author       Zach Hardesty <[email protected]> (https://github.com/zachhardesty7)
// @description  hide videos with given title keywords
// @copyright    2019, Zach Hardesty (https://zachhardesty.com/)
// @license      GPL-3.0-only; http://www.gnu.org/licenses/gpl-3.0.txt
// @version      0.1.5

// @homepageURL  https://github.com/zachhardesty7/tamper-monkey-scripts-collection/raw/master/youtube-filter-subscriptions-page.user.js
// @homepageURL  https://openuserjs.org/scripts/zachhardesty7/YouTube_-_Filter_Subscriptions_Page
// @supportURL   https://openuserjs.org/scripts/zachhardesty7/YouTube_-_Filter_Subscriptions_Page/issues


// @match        https://www.youtube.com/feed/subscriptions*
// @match        https://www.youtube.com/
// @match        https://www.youtube.com/?*
// @require      https://greasyfork.org/scripts/419640-onelementready/code/onElementReady.js?version=887637
// ==/UserScript==
/* global onElementReady */

const keywords = [
  "pixelmon",
  "binding of isaac",
  "dark souls",
  "darkest dungeon",
  "hot rod garage",
  "dirt every day",
  "roadkill",
  "standard chess",
  "no man's sky",
  "unboxing",
  "week to wicked",
  "engine masters",
  "hearthstone",
]

// only operate once necessary el has loaded
onElementReady(
  "#dismissable.style-scope.ytd-grid-video-renderer",
  { findOnce: false },
  (el) => {
    // remove video
    for (const keyword of keywords) {
      if (
        el
          .querySelector("#details")
          .querySelector("#meta")
          .firstElementChild.textContent.toLowerCase()
          .includes(keyword)
      ) {
        el.parentElement.remove()
      }
    }
  }
)