您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Remove all "Talk to Recs" / experimental recommendation sections from YouTube
// ==UserScript== // @name Hide YouTube Experimental Recs Sections // @description Remove all "Talk to Recs" / experimental recommendation sections from YouTube // @namespace http://tampermonkey.net/ // @icon https://cdn-icons-png.flaticon.com/64/2504/2504965.png // @version 0.0.3 // @author rxm // @match https://www.youtube.com/* // @license MIT // @grant none // ==/UserScript== (function() { 'use strict'; /** * Function to find and remove unwanted YouTube sections. * This targets "Talk to Recs" and other experimental recommendation blocks, * as well as new banner-style promos like "Noteworthy creativity". */ const hideExperimentalRecs = () => { // Look for all "rich section" containers on the YouTube homepage document.querySelectorAll('ytd-rich-section-renderer, ytd-statement-banner-renderer').forEach(el => { // Check for signs this is a "Talk to Recs" or other experimental section: if ( // Case 1: Contains the special component used for "Talk to Recs" el.querySelector('ytd-talk-to-recs-flow-renderer') || // Case 2: Contains the title container used by these experimental sections el.querySelector('.ytwTalkToRecsTitle') || // Case 3: Text contains "ask for videos" (case-insensitive) el.textContent.match(/ask for videos/i) || // Case 4: Text contains "recommend videos" (case-insensitive) el.textContent.match(/recommend videos/i) || // Case 5: New banners like "Noteworthy creativity" / "YouTube featured" el.querySelector('#big-yoodle') || el.querySelector('ytd-statement-banner-renderer') || el.textContent.match(/YouTube featured/i) ) { // If matched, remove the entire section el.remove(); console.log("[YT Cleaner] Removed experimental/featured recommendation section"); } }); }; // Run immediately when the page first loads hideExperimentalRecs(); // Keep watching for dynamically loaded content (YouTube uses infinite scroll) const observer = new MutationObserver(hideExperimentalRecs); observer.observe(document.body, { childList: true, subtree: true }); })();