如何立即取消订阅所有Youtube频道?

Mar*_*ain 6 youtube automation

在过去的10年里,我订阅了超过300个Youtube频道,现在我必须清理我的Youtube,一个接一个地取消订阅需要一些时间,有没有办法立刻取消订阅所有的cannels?

Yog*_*gie 28

第1步:转到https://www.youtube.com/feed/channels并滚动到页面底部,将所有项目填充到屏幕上.

第2步:右键单击页面上的任意位置,然后单击"检查元素"(或只是"检查"),然后单击"控制台",然后复制粘贴以下脚本,然后单击return.

第3步:

var i = 0;

var myVar = setInterval(myTimer, 3000);

function myTimer () {

    var els = document.getElementById("grid-container").getElementsByClassName("ytd-expanded-shelf-contents-renderer");

    if (i < els.length) {

        els[i].querySelector("[aria-label^='Unsubscribe from']").click();

        setTimeout(function () {

            var unSubBtn = document.getElementById("confirm-button").click();

        }, 2000);

        setTimeout(function () {

            els[i].parentNode.removeChild(els[i]);

        }, 2000);

    }

    i++;

    console.log(i + " unsubscribed by YOGIE");

    console.log(els.length + " remaining");

}
Run Code Online (Sandbox Code Playgroud)

第4步:坐下来观看魔术!

请享用!!

注意: 如果脚本停在某处,请刷新页面并再次执行所有四个步骤.

  • 要运行得更快,请将第二行更改为 var myVar = setInterval(myTimer, 1000); (3认同)
  • 从 3000 改为 1000,从 2000 改为 500 正如 Jay 所说,它会很快起作用 (2认同)

小智 11

更新其他所有人提供的答案(因为最新的更新对我不起作用):

var i = 0;
var count = document.querySelectorAll("ytd-channel-renderer:not(.ytd-item-section-renderer)");

myTimer();

function myTimer () {	
    if (count == 0) return;

    el = document.querySelector('.ytd-subscribe-button-renderer');
    el.click();

    setTimeout(function () {
        var unSubBtn = document.getElementById("confirm-button").click();
        i++;
        count--;

        console.log(i + " unsubscribed");
        console.log(count + " remaining");

        setTimeout(function () {
            el = document.querySelector("ytd-channel-renderer");
            el.parentNode.removeChild(el);

            myTimer();
        }, 250);
    }, 250);
}
Run Code Online (Sandbox Code Playgroud)

对我来说,这就是窍门。


V1N*_*NNY 9

Youtube 频道退订者(作品 2020 年 4 月)

  • 访问链接: https://www.youtube.com/feed/channels
  • F12
  • 在您的控制台中插入以下代码
function youtubeUnsubscriber() {
    var count = document.querySelectorAll("ytd-channel-renderer:not(.ytd-item-section-renderer)").length;
    var randomDelay = 500;

    if(count == 0) return false;

    function unsubscribeVisible(randomDelay) {

        if (count == 0) {
            window.scrollTo(0,document.body.scrollHeight);
            setTimeout(function() {
                youtubeUnsubscriber();
            }, 10000)
        }

        unsubscribeButton = document.querySelector('.ytd-subscribe-button-renderer');
        unsubscribeButton.click();

        setTimeout(function () {
            document.getElementById("confirm-button").click()
            count--;
            console.log("Remaining: ", count);

            setTimeout(function () {
                unsubscribedElement = document.querySelector("ytd-channel-renderer");
                unsubscribedElement.parentNode.removeChild(unsubscribedElement);
                unsubscribeVisible(randomDelay)
            }, randomDelay);
        }, randomDelay);
    }

    unsubscribeVisible(randomDelay);
}

youtubeUnsubscriber();
Run Code Online (Sandbox Code Playgroud)

参考