Обновил скрипт, который блокирует рекламу на DZEN.ru. Скачать новую версию можно с GitHub https://github.com/VVSite/block-ads-dzen-video
Раздел FireFox
Скрипт tampermonkey для блокировки нежелательных каналов в Youtube
Это скрипт блокирует каналы в списках выдачи и поиска на Youtube. Скопируйте название канала, как на рисунке.
Затем нажимаете кнопку слева в верхнем углу и через запятую введите названия каналов без https://www.youtube.com. После этого закрываете список, нажав на кнопку с крестиком.
Для проверки работы скрипта введите нужный поиск каналов и проверьте как срипт удалит каналы из списка поиска или выдачи.
Установка производится так же, как и другие скрипты tampermonkey. Пример описан здесь.
// ==UserScript== // @name Block Youtube channels // @namespace http://tampermonkey.net/ // @version 0.4 // @description Block Youtube channels // @author VVSite // @match https://www.youtube.com/* // @icon https://www.google.com/s2/favicons?domain=youtube.com // @grant none // ==/UserScript== (function() { 'use strict'; var clDiv = document.createElement('div'); clDiv.style.cssText = 'z-index: 30000; font-family: verdana, serif; background: #000; border: 1px solid red; position: fixed; top: 0px; left: -310px;'; clDiv.innerHTML = '<input type=text class="cl-text" placeholder="Список каналов через ," style="padding: 3px; width: 300px; font-weight: bold; border: 0px;"><button class="cl-but" style="color: red;">❌</button>'; document.body.appendChild(clDiv); var clb = clDiv.querySelector('.cl-but'); var clt = clDiv.querySelector('.cl-text'); var yicl = []; function lc() { var coo = getCookie('clist'); clt.value = coo; if (coo) { coo = coo.replace(/[\s]{1,3}/g, ''); yicl = coo.split(','); } } lc(); // var yicl = ['HESUSDED', 'uglytwoi']; if (clb) { clb.onclick = (e)=>{ //e.preventDefault(); e.stopPropagation(); clDiv.style.left = (clDiv.style.left == '0px' ? '-310px' : '0px'); console.log(clt.value); setCookie('clist', clt.value, 365); lc(); return false; }; } // // Set a Cookie function setCookie(cName, cValue, expDays) { let date = new Date(); date.setTime(date.getTime() + (expDays * 24 * 60 * 60 * 1000)); const expires = "expires=" + date.toUTCString(); document.cookie = cName + "=" + cValue + "; " + expires + "; path=/"; } // Get a Cookie function getCookie(cName) { const name = cName + "="; const cDecoded = decodeURIComponent(document.cookie); //to be careful const cArr = cDecoded .split('; '); let res; cArr.forEach(val => { if (val.indexOf(name) === 0) res = val.substring(name.length); }) return res; } // // Fullscreen mode && iframe function cfs() { clDiv.style.display = ((!window.screenTop && !window.screenY) || (window!=window.top) ? 'none' : 'block'); } // start var fc = setInterval(function(e){ cfs(); // console.log(yicl); var clsbl = ['ytd-rich-item-renderer', 'ytd-video-renderer']; yicl.forEach(function(v, i, e){ var lnk = document.querySelectorAll('a[href="' + v + '"]'); if (lnk[0]) { clsbl.forEach(function(v_bl){ var bl1 = lnk[0].closest(v_bl); if (bl1) bl1.remove(); }); } }); }, 200); })();
GitHub репозиторий для скрипта
Сделал отдельный репозиторий для скрипта, который блокирует рекламу на DZEN.ru — https://github.com/VVSite/block-ads-dzen-video
Убрать надоедливые блоки анонсов при просмотре Yotube
Как убрать эти анонсы, перекрываюшие текущее видео?
1. Установите блокировщик рекламы uBlock Origin в магазине расширений для вашего браузера. Это ссылка на расширение для Firefox.
2. После установки расширения щелкните по кнопке расширения для вызова окна uBlock Origin, щелкните в окне кнопку настройки.
3. В появившемся окне выберите вкладке «Мои фильтры» и введите 4 строки:
youtube.com##.ytp-ce-bottom-right-quad youtube.com##.ytp-ce-bottom-left-quad youtube.com##.ytp-ce-top-right-quad youtube.com##.ytp-ce-top-left-quad
4. Нажмите кнопку «Применить изменения».
5. Откройте Youtube и просмотрите какой-нибудь ролик до конца, убедитесь, что больше не видно анонсов других роликов по углам текущего видео.
Скрипт Tampermonkey для блокировки рекламы на DZEN видео
По моему мнению DZEN Видео вполне рабочая замена Youtube, осталось её немного доработать ?.
Однако рекламные видео-вставки при просмотре это самое настоящее мучение для пользователя. Иногда их бывает до 6 штук подряд!
Этот скрипт не может блокировать видео рекламу, но позволяет её «пропустить».
// ==UserScript== // @name Закрыть рекламу на DZEN.RU и Yandex // @namespace http://tampermonkey.net/ // @version 0.9 // @description Автоматическое закрытие рекламы на DZEN Видео // @author VVSite // @match https://dzen.ru/video/watch/* // @match https://dzen.ru/embed/* // @match https://dzen.ru/video // @icon https://www.google.com/s2/favicons?sz=64&domain=dzen.ru // @homepageURL https://github.com/VVSite/block-ads-dzen-video // @downloadURL https://github.com/VVSite/block-ads-dzen-video/block-ads-dzen.js // @updateURL https://github.com/VVSite/block-ads-dzen-video/block-ads-dzen.js // @grant none // ==/UserScript== (function() { 'use strict'; var elYplay = 'yaplayertag'; var svgShd = 'svg[width="24"]'; const txtMenu1 = 'Пожаловаться'; const txtMenu2 = 'Мне это неприятно'; const time = 20; var start = setInterval(closeCommercial, time*2); function closeCommercial() { var yp = document.querySelector(elYplay); if (yp) { var svgX = querySelectorAllShadows(svgShd, yp); if (svgX[0] !== undefined && svgX[0].parentElement !== undefined) { svgX[0].parentElement.parentElement.style.visibility = 'hidden'; svgX[0].parentElement.click(); clearInterval(start); start = null; setTimeout(function(){ var hideM = querySelectorAllShadows('div', yp, txtMenu1); if (hideM) { var menu1 = hideM.parentElement.parentElement.parentElement; menu1.parentElement.style.visibility = 'hidden'; menu1.click(); } }, time*2); // setTimeout(function(){ var hideM2 = querySelectorAllShadows('div', yp, txtMenu2); // console.log(hideM2); if (hideM2) { var menu2 = hideM2.parentElement.parentElement.parentElement; menu2.parentElement.style.visibility = 'hidden'; menu2.click(); start = setInterval(closeCommercial, time*4); } }, time*3); } } } // find shadow elements function querySelectorAllShadows(selector, el = document.body, text = null) { var res = null; const childShadows = Array.from(el.querySelectorAll('*')).map(el => el.shadowRoot).filter(Boolean); const childResults = childShadows.map(child => querySelectorAllShadows(selector, child)); const result = Array.from(el.querySelectorAll(selector)); res = result.concat(childResults).flat(); // if (text) { var i = 0; res.forEach((e) => { if (RegExp(text).test(e.textContent)) { res = e; return; } i++; }); } return res; } })();
Для использования скрипта:
1. Установите плагин Tampermonkey для Firefox.
2. Скопируйте содержимое кода скрипта вверху.
3. Щелкните на кнопке плагина, чтобы вызвать меню и выберите «Создать новый скрипт».
4. Удалите весь текст, который Tampermonkey автоматически добавляет в новый скрипт и вставьте из буфера скопированный в п.2 код.
5. Сохраните скрипт по «Файл — Сохранить».
6. Откройте любой ролик DZEN Видео, дождитесь рекламы. Убедитесь, что реклама промелькнет буквально за несколько секунд.