YoutubeWhy

Clicks the dumb age verification button new accounts are forced to click, and also bypasses the warning placed on user created videos that counter-signal google's financial interests.

当前为 2020-09-02 提交的版本,查看 最新版本

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// ==UserScript==
// @name         YoutubeWhy
// @include      https://www.youtube.com/*
// @version      17
// @description  Clicks the dumb age verification button new accounts are forced to click, and also bypasses the warning placed on user created videos that counter-signal google's financial interests.
// @author Wepwawet
// @grant        none
// @run-at          document-start
// @namespace sc
// ==/UserScript==
//
// bpctr is youtube creating a unique tracking ID for a video URL, sharing it means tracing the source of the share down. Cannot watch videos flagged for counter-signaling without it.
// This isn't even for tracking since they already have that data, it's purely to annoy users.
// has_verified=1 is unique to r18 videos, legacy accounts never see it, new accounts have to have it present in URL, no tracing. This bug has been filed multiple times. Not fixed, it's not a bug.
// some videos require four clicks and three pageloads from the user to see without this script
//
var lastpage = '';

function code()
{
    if (document.URL.includes('bpctr=9999999999&has_verified')) return;
    if (lastpage == document.URL) return;
    var r18 = document.querySelector('paper-button.yt-button-renderer');
    if (!r18) r18 = document.querySelector('yt-formatted-string.yt-button-renderer');
    if (r18 && r18.innerText == 'I UNDERSTAND AND WISH TO PROCEED')
    {
        window.stop();
        lastpage = document.URL;
        location.replace(document.URL + '&bpctr=9999999999&has_verified=1');
        return;
    }
    setTimeout(function()
    {
        code();
        return;
    }, 2000);
}
window.onload = code;
window.addEventListener('yt-navigate-start', code, true);
window.addEventListener('yt-navigate-finish', code, true);
setTimeout(code, 2000)