Удаление ленты на Дзене
Возможно ли удалить с помощью скриптов бесконечную раздражающую ленту на dzen.ru? Пытался убрать разными адблоками, не помогает...
|
winrar2018,
document.querySelector("div.feed._is-dzen._column-count_2").remove()
|
Если всё так просто, то и болкировщиком по фильтру
##div.feed._is-dzen._column-count_2должно легко прятаться... |
Имелось ввиду, скрыть нужно только материалы от разных блогеров, а ленту новостей "Сейчас в СМИ", которая на самом верху - оставить.
Когда я блокирую каждый материал блогеров по отдельности с помощью AdGuard, то получаются такие правила: dzen.ru###zen-row-1 dzen.ru###zen-row-2 dzen.ru###zen-row-3 dzen.ru###zen-row-4и так до бесконечности. Но в итоге ничего не блокируется. Целиком захватить только блогерскую ленту не получается, т.к. блок новостей, который нужно оставить, находится в "zen-row-0"... |
winrar2018,
document.querySelector("div.feed._is-dzen._column-count_2").replaceWith(document.querySelector("#zen-row-0"));
|
рони,
огромное спасибо! |
##div[class^="dzen-desktop__feed"] > .more-mark-wrapper // отключит подгрузку даже в скрытом виде
##div[class^="dzen-desktop__feed"] > .feed._is-dzen > #zen-row-0 ~ * // собсно скроет что уже есть Но вариант рони лучше, если можете позволить себе скрипт, т.к. с моим вариантом дизайн ломается.) |
Aetae,
спасибо. проверил, тоже хорошо работает, ничего не ломается. |
Можно еще как-то убрать баннеры "Установите Яндекс. Браузер"? Там 4 разных баннера появляются в разных местах. Ссылки на них такие:
на самом верху над строкой поиска яндекса: dzen.ru##.l1fd5e70b.b32a6ac2b dzen.ru##.c1ea86e40.dd8cda46c.fda94a6c1.s34e1aef2 под строкой поиска: dzen.ru##.y_k3rakK4eeC58jYoeNo3jot2Icx2bQ-32 в правом нижнем углу страницы: dzen.ru##.w31c4cc85.wf6d87346 в левом верхнем углу страницы: dzen.ru##.jb31668b3.icda9900.c3060a80.hbbba3a2e Но они постоянно меняются и адблок работает только временно... |
winrar2018, очевидно, что классы генерированые. Надо по соседним элементам\неизменяемым атрибутам блочить.
Навскидку что-то типа того: dzen.ru##.content > [class*="__container"] > div:not([class*="__"]) Но не гарантирую, что оно чего лишнего не отрежет.) Рекомендую изучить css-селекторы. Там не так сложно, но всегда потом пригодится. |
winrar2018,
пробуйте
function containsAll(sel, str) {
[...document.querySelectorAll(sel)].filter(({
textContent
}) => textContent.includes(str)).map(el => el.closest('div[id]')).forEach(div => div.remove())
}
containsAll('a', 'Установит');
containsAll('a', 'Браузер');
|
Aetae, рони
большое спасибо! все работает. |
// ==UserScript==
// @name Дзен
// @namespace [url]http://tampermonkey.net/[/url]
// @version 0.1
// @description try to take over the world!
// @author You
// @match [url]https://dzen.ru/[/url]
// @icon [url]https://www.google.com/s2/favicons?sz=64&domain=dzen.ru[/url]
// @grant none
// ==/UserScript==
/// Удаляет ленту Дзен.
(function() {
'use strict';
document.querySelector("div.feed._is-dzen._column-count_2").replaceWith(document.querySelector("#zen-row-0"));
document.querySelector("div.feed._is-dzen._column-count_2").remove();
})();
/// Удаляет предложения установить Яндекс Браузер
function containsAll(sel, str) {
[...document.querySelectorAll(sel)].filter(({
textContent
}) => textContent.includes(str)).map(el => el.closest('div[id]')).forEach(div => div.remove())
}
containsAll('a', 'Установит');
containsAll('a', 'Браузер');
Ребзя, трям! Живота прошу за поднятие некротопика, но челом бью: помогите, с позавчерашнего дня перестало работать. :( |
Унбибий,
(function() {
function containsAll(sel, str) {
[...document.querySelectorAll(sel)].filter(({
textContent
}) => textContent.includes(str)).map(el => el.closest('div[id]')).forEach(div => div.remove())
}
containsAll('a', 'Установит');
containsAll('a', 'Браузер');
containsAll('[rel="noopener"]', 'Да');
document.querySelector("div.feed._column-count_2").replaceWith(document.querySelector("#zen-row-0"));
})()
|
Цитата:
Ну ведь спасибище же! \ ![]() |
Перестало работать удаление ленты. На дзене в коде вместо:
feed._column-count_2вроде появилось: feed._column-count_2._is-desktop-redesign._grid-type_fixed._is-redesign._is-redesign-desktop-cards-has-hover-shadowsНо когда я поменял, то все равно не работает.. |
winrar2018,
вариант из #14 у меня работает. |
Цитата:
Странно. У меня лента только на секунду удаляется и сразу же опять появляется.. |
Цитата:
Не понимаю почему у меня не работает. В чем может быть причина? Можете полностью выложить код? |
Цитата:
|
Цитата:
Осмелюсь предположить, что winrar2018 челом о сруб светлицы бьёт, и нижайше |
Унбибий,
пробуйте ...
(function() {
function containsAll(sel, str) {
[...document.querySelectorAll(sel)].filter(({
textContent
}) => textContent.includes(str)).map(el => el.closest('div[id]')).forEach(div => div.remove())
}
containsAll('a', 'Установит');
containsAll('a', 'Браузер');
containsAll('[rel="noopener"]', 'Да');
function rem() {
let con = document.querySelector("div.dzen-with-punch-desktop__topContent-OK") || document.querySelector("div#zen-row-0");
if (con) {
let par = con.parentNode;
par.replaceWith(con);
}
}
rem();
window.setTimeout(rem, 500)
})()
|
Цитата:
М-ммм… Вкусно! В смысле, классно — всё арбайтен! :yes: Спасибо от себя, и того парня. :thanks: |
Дзен достаточно часто меняет паттерны слоёв на главной странице, но до последнего времени удавалось (совместно с AI) справляться самостоятельно. Последние две с половиной недели — не получается.
Прошу помощи! |
Унбибий,
вариант ...
(function() {
function containsAll(sel, str) {
[...document.querySelectorAll(sel)].filter(({
textContent
}) => textContent.toLowerCase().includes(str.toLowerCase())).map(el => el.closest('div[id]')).forEach(div => div.remove())
}
containsAll('a', 'Установит');
containsAll('a', 'Браузер');
containsAll('[rel="noopener"]', 'Да');
function rem() {
let con = document.querySelector(".card-news__tabPane-3_") || document.querySelector("div#zen-row-0");
if (con) {
let par = con.parentNode;
par.replaceWith(con);
}
let lenta = document.querySelector('[aria-label="Лентa Дзена"]');
if (lenta) lenta.remove();
}
rem();
window.setTimeout(rem, 500)
})()
|
рони, большое спасибо, и виртуальный плюс от меня вам в карму!
Небольшой фидбек: то, что обведено красным, сейчас скрывает, а зелёным — оставляет (FF 115.10.0esr, Tampermonkey 5.1.0, Desctop). Было бы очень клёво, если бы можно было сделать наоборот. Я не уверен, что осилю это самостоятельно. По крайней мере, с наскоку пока не получилось. :( ![]() |
| Часовой пояс GMT +3, время: 18:36. |