您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Remove too short or too long videos from your YouTube's recommendation
- // ==UserScript==
- // @name YouTube: Remove Videos Based on Duration
- // @namespace http://tampermonkey.net/
- // @version 0.2
- // @description Remove too short or too long videos from your YouTube's recommendation
- // @author Timothy (kuronek0zero)
- // @namespace https://github.com/kuronekozero/youtube-remove-short-long-videos/tree/main
- // @match https://www.youtube.com/*
- // @grant GM_addStyle
- // @license MIT
- // ==/UserScript==
- (function() {
- const userMinVideoDuration = 120; // Minimum duration in seconds (1 minute)
- // const userMaxVideoDuration = 600; // Maximum duration in seconds (10 minutes) uncomment this part if you want to also remove too long videos
- function getDurationInSeconds(durationText) {
- const timeParts = durationText.split(":").map(Number);
- if (timeParts.length === 2) {
- return timeParts[0] * 60 + timeParts[1]; // MM:SS
- } else if (timeParts.length === 3) {
- return timeParts[0] * 3600 + timeParts[1] * 60 + timeParts[2]; // HH:MM:SS
- }
- return 0;
- }
- function removeVideos() {
- const videos = document.querySelectorAll('ytd-video-renderer, ytd-grid-video-renderer, ytd-rich-item-renderer');
- videos.forEach(video => {
- const durationElement = video.querySelector('.badge-shape-wiz__text');
- if (durationElement) {
- const durationText = durationElement.textContent.trim();
- const durationInSeconds = getDurationInSeconds(durationText);
- if (durationInSeconds < userMinVideoDuration /* || durationInSeconds > userMaxVideoDuration */ ) {
- video.style.display = 'none';
- }
- }
- });
- }
- // Run the script every 3 seconds to remove videos dynamically
- setInterval(removeVideos, 3000);
- })();