shitty but works in 2018
当前为
// ==UserScript==
// @name YouTube Age Bypass
// @description shitty but works in 2018
// @version 1
// @grant none
// @run-at document-end
// @namespace https://greatest.deepsurf.us/users/149768
// ==/UserScript==
(function() {
"use strict";
const inject = function() {
"use strict";
function isCurrentVideoAgeRestricted() {
return typeof window.ytInitialPlayerResponse.playabilityStatus.desktopLegacyAgeGateReason != 'undefined' && window.ytInitialPlayerResponse.playabilityStatus.desktopLegacyAgeGateReason;
}
function getVideoId() {
return window.ytInitialPlayerResponse.videoDetails.videoId;
}
function removeNode(n) {
n.parentNode.removeChild(n);
}
function waitForNodeId(node, cb) {
var ival = setInterval(function(node, cb) {
if (document.getElementById(node) != null) {
clearInterval(ival);
cb();
}
}, 100, node, cb);
}
console.log("Is video age restricted: " + isCurrentVideoAgeRestricted())
if (!isCurrentVideoAgeRestricted()) {
return;
}
waitForNodeId('player-container', function() {
removeNode(document.getElementById('error-screen'));
waitForNodeId('movie_player', function() {
var oldplayer = document.getElementById('movie_player');
var container = oldplayer.parentNode;
var playerCSSClass = oldplayer.className;
removeNode(oldplayer);
document.querySelectorAll('[player-unavailable]').forEach(function(e) {
e.removeAttribute('player-unavailable');
});
var playerframe = window.document.createElement("iframe");
playerframe.setAttribute("src", "//www.youtube.com/embed/" + getVideoId() + "?autoplay=1&showinfo=0&rel=0");
playerframe.setAttribute("id", "movie_player");
playerframe.setAttribute("class", playerCSSClass);
playerframe.setAttribute("frameBorder", "0");
container.appendChild(playerframe);
});
});
}
const script = document.createElement("script");
const target = document.head || document.documentElement;
script.text = "(" + inject.toString() + ")();";
target.appendChild(script);
target.removeChild(script);
})();