Closed AroKol78 closed 3 years ago
Zakładając, że każdy obrazek z posta ma .fancybox
lub .postlink
(a pewnie nie mają go ręcznie wstawione małe przy pomocy [img] [/img]
) to może takie:
elektroda.pl##section a:not([href*="elektroda.pl/"]):not([href*="/rtvforum/"]):not(.fancybox):not(.postlink) img[src^="https://obrazki.elektroda.pl/"]
elektroda.pl###main .col-md-8 a:not([href*="elektroda.pl/"]) img[src^="https://static.elektroda.pl/"]
reklamy wyglądają na generowane w PHP / wciśnięte w szablon po stronie serwera (nie ładuje ich raczej żaden JavaScript).
Pomysł może szybko paść, może AdamWr lub @zaba-monika ma lepszy lub oszczędzający osadzone grafiki w postach (niebędące reklamami).
Skrypt na wykrycie adblock wygląda tak:
document.querySelectorAll('.d9460dd5a-b5517335b632a70').length > 0) {
var adBlockTest = document.createElement('div');
adBlockTest.innerHTML = ' ',
adBlockTest.className = 'adBanner advert advertisement adsby',
document.body.appendChild(adBlockTest),
window.setTimeout(function () {
0 === adBlockTest.offsetHeight && document.querySelectorAll('.d9460dd5a-b5517335b632a70') [0].classList.add('eb88a7fd7fa2'),
adBlockTest.remove()
}, 100)
}
Można próbować naprawić CSS-em:
elektroda.pl##html:root body .adBanner.advert.advertisement.adsby[class*="ad"]:style(display: block !important;)
[pewnie padnie z momentem dodania wykrywania innych elementów generycznych EasyList]
Niby działa skryptlet, do czasu aż nie zmienią nazwy na losową (pamiętaj o użyciu najdłużej nazwy "aopr
" w uBO Legacy):
psuje się homepage 😤elektroda.pl##+js(aopr, adBlockTest)
elektroda.pl##+js(nostif, adBlockTest, 100)
- niby lepsze ale raczej to przypadek, że działa.
Naprawa dla ABP i AdBlocka wymaga dodania kilku wyjątków i może już czas na generichide
:
elektroda.pl#@#.adBannner
elektroda.pl#@#.advert
elektroda.pl#@#.advertisement
elektroda.pl#@#.adsby
!elektroda.pl#@#[class^="ads"]
ostatni chyba już nie będzie potrzebny.
Dodatkowo na homepage widzę, że wróciła reklama "przejdź do strony":
function loadElementBlock() {
0 === pStatus && (pStatus = 1, welcomeAdContainerTag.style.display = 'block', fadeIn(welcomeAdContainer, 500), welcomeAdOverlayElement.style.opacity = 1, welcomeAdOverlayElement.style.display = 'block', fadeIn(welcomeAdOverlay, 1), cd1(timeinsecs))
}
function disablePopup() {
1 === pStatus && (pStatus = 0, welcomeAdContainerTag.style.display = 'none', welcomeAdOverlayElement.style.display = 'none', fadeOut(welcomeAdContainer, 100), fadeOut(welcomeAdOverlay, 100))
}
console.log('WelcomeAd init');
var sec1,
timeinsecs = 20,
today = new Date,
pStatus = 0,
welcomeAdContainer = getComputedStyle(document.documentElement).getPropertyValue('--welcome-ad-container'),
welcomeAdOverlay = getComputedStyle(document.documentElement).getPropertyValue('--welcome-ad-overlay'),
welcomeAdContainerTag = document.getElementById(welcomeAdContainer),
welcomeAdOverlayElement = document.getElementById(welcomeAdOverlay);
if ('' !== getCookie('WelcomeCookie')) {
var cookieDate = new Date(getCookie('WelcomeCookie')),
todayDate = ('0' + (today.getMonth() + 1)).slice( - 2) + '/' + today.getDate() + '/' + today.getFullYear(),
cookieDateParse = ('0' + (today.getMonth() + 1)).slice( - 2) + '/' + cookieDate.getDate() + '/' + cookieDate.getFullYear();
window.innerWidth > 896 && todayDate > cookieDateParse && (setCookie('WelcomeCookie', todayDate, 1), loadElementBlock(), setTimeout(function () {
disablePopup()
}, 1000 * timeinsecs))
} else {
var welcomeCookie = ('0' + (today.getMonth() + 1)).slice( - 2) + '/' + today.getDate() + '/' + today.getFullYear();
window.innerWidth > 896 && (setCookie('WelcomeCookie', welcomeCookie, 1), loadElementBlock(), setTimeout(function () {
disablePopup()
}, 1000 * timeinsecs))
}
1 === pStatus && (document.getElementById('nontag').onclick = function () {
disablePopup()
}, document.getElementById('WelcomeAdCloseButton').onclick = function () {
disablePopup()
}, welcomeAdOverlayElement.onclick = function () {
disablePopup()
}, document.onkeydown = function (e) {
27 === e.keyCode && disablePopup()
});
czyli ten filtr aktualizujemy: https://github.com/MajkiIT/polish-ads-filter/blob/4aaeb423a4b578c804ea004f1a2b96c696fdd237/polish-adblock-filters/adblock_ublock.txt#L381 [uBO legacy wymaga testowania z najdłuższą nazwą skryptletu]
do nowej nazwy loadElementBlock
krystian3w działa na reklame 👍
elektroda.pl##section a:not([href*="elektroda.pl/"]):not([href*="/rtvforum/"]):not(.fancybox):not(.postlink) img[src^="https://obrazki.elektroda.pl/"]
elektroda.pl###main .col-md-8 a:not([href*="elektroda.pl/"]) img[src^="https://static.elektroda.pl/"]
Dodatkowo na homepage widzę, że wróciła reklama "przejdź do strony":
👍 www.elektroda.pl##+js(set-constant.js, loadElementBlock, noopFunc)
www.elektroda.pl##+js(set, loadElement, noopFunc)
wykrycie adblock
👍 elektroda.pl##html:root body .adBanner.advert.advertisement.adsby[class*="ad"]:style(display: block !important;)
elektroda.pl##+js(abort-on-property-read.js, adBlockTest)
za dużo blokuje - część stron nie wczytuje się,kręcące kółka
(jeszcze tme.eu)
czyli skryptowo anty-adblock trzeba jeszcze inaczej, na razie zostaje więc CSS lub dopuszczenia w stylu ABP/AdBlock.
Niby taki działa i nie psuje homepage, ale chyba wciąż za duży kaliber:
elektroda.pl##+js(nostif, adBlockTest, 100)
i znowu pamiętaj by użyć nazwy "setTimeout-defuser.js
"
Co do wyszukiwarki "T E M" to nie wiem czy ją wycinać, jak Adam ją wywalał to my też możemy czymś takim:
###main .col-md-8 form > table
Niby tabel na homepage nie ma poza wyszukiwarką, a już na pewno rzadkością będzie taka wciśnięta w formularze internetowe "<form>
"
nostif
= no-setTimeout-if.js
👍 elektroda.pl##+js(no-setTimeout-if.js, adBlockTest, 100)
pamiętaj by użyć nazwy "
setTimeout-defuser.js
"
std
= setTimeout-defuser.js
👍 elektroda.pl##+js(setTimeout-defuser.js, adBlockTest, 100)
Co do wyszukiwarki "T E M"
👍 elektroda.pl###main .col-md-8 form > table
jak uważacie / zrobicie tak będzie
jutro napewno nazwy beda po zmieniane
dodali nową wyszukiwarkę do home ( w stylu "T E M")
"Micros", może nawet dużo starsza.
###main .col-md-8 form[action*="tme"]:upward(1)
###main .col-md-8 form[action*="micros"]:upward(2)
Niby upward liczbowy działa z uBO legacy (ale już wcale z ABP/AdBlock - tam trzeba posiłkować się -abp-has
).
#?##main .col-md-8 div:-abp-has(> form[action*="tme"])
#?##main .col-md-8 div:-abp-has(> * > form[action*="micros"])
Ciekawostka takie ukrywają cały div z reklamami [homepage]:
###main .col-md-8 form[action*="//"][action*="m"][action*="."]:upward(.col-md-8 > div)
###main .col-md-8 form[action*="//"][action*="m"][action*="."]:upward(.col-md-8 > div)
tylko cały pasek gdzie są wyszukiwarki
Tak tak.
🥇 krystian3w 👍 jak na razie działa bez problemu
(na Adguard podobny problem z elektroda.pl
- https://github.com/AdguardTeam/AdguardFilters/issues/72472)
🥇 MajkiIT 👍 dzięki open.fm
👍 https://github.com/MajkiIT/polish-ads-filter/commit/b4e41bfc9ee5e4f6702986489e679acad2239e52 https://github.com/MajkiIT/polish-ads-filter/commit/41625f4a8fa914747b5034d1905b46f3c7cfee71
autor krystian3w 👍
elektroda.pl##section a:not([href*="elektroda.pl/"]):not([href*="/rtvforum/"]):not(.fancybox):not(.postlink) img[src^="https://obrazki.elektroda.pl/"]
elektroda.pl###main .col-md-8 a:not([href*="elektroda.pl/"]) img[src^="https://static.elektroda.pl/"]
elektroda.pl###main .col-md-8 form[action*="//"][action*="m"][action*="."]:upward(.col-md-8 > div)
elektroda.pl##+js(no-setTimeout-if.js, adBlockTest, 100)
www.elektroda.pl##+js(set-constant.js, loadElementBlock, noopFunc)
Adguard usunął wykrywanie height
krystian3w - zostanę przy twoich filtrach - (nie skacze strona,nie mrugnie reklama,anty-adblock,w przyszłość wytnie dodane wyszukiwarki)
Z ciekawostek, AdGuard też wyciął "macros" z pomocą ":upward(2)".
"AdGuard Base"
elektroda.pl#?#.col-md-8 div[style*="micros"] > div[style] > form[action^="https://www.micros.com.pl/"]:upward(2)
a jak zmienią / dodadzą wyszukiwarkę
Ciekawostka takie ukrywają cały div z reklamami [homepage]:
###main .col-md-8 form[action*="//"][action*="m"][action*="."]:upward(.col-md-8 > div)
👍
@felix-22 -https://github.com/MajkiIT/polish-ads-filter/issues/19025 ja używam https://github.com/MajkiIT/polish-ads-filter/issues/18446#issuecomment-763791292 brak Anty-adblock
czy potrzebne łączenie się z domeną caringcast.com
?
Sprawdź czy bo zablokowaniu się dalej ładuje lub nie wlepia bana na IP.
Jakby wleciał ban to można próbować robić przekierowania na puste pliki html/txt/js/png/mp4.
strona dział dobrze z i bez caringcast.com
...
= nazwa długa i niezrozumiała tak jak na wp
https://caringcast.com/v...P
= script
No to oceń czy to się nadaje na listę:
Możliwe, że przymierzają się do wdrożenia anty-adblock typu Admiral.
nie umiem ocenić ~plik tekstowy z script spakowany (29kb a wypakowany 103kb)~ ~sriptCaringcast.zip~ - jak będzie jeszcze potrzebne to zapodam
przejrzałem z grubsza i mi wygląda na 3 pierwsze rzeczy wymienione + "że przymierzają się do wdroż..." mogę się mylić
Czyli to generator reklam zewnętrznych + tracker + możliwy generator self-promo?
@olegwukr oceń czy warto blokować coś jako elementy śledzące użytkowników.
na razie niby włączone !
(chyba)
to znalazłem i nie wiem co to ma być (nie znam domeny i jestem podejrzliwy, coś znanego bym jeszcze strawił)
Ten wykrzyknik to nie wyłączenie a najkrótsza forma uruchamiania skryptu.
AdGuard ma klikanaście skryptletów z wykrzyknikiem !
na początku i dopiero usunięcie sprawia, że filtr nie działa
jak usunąć bez id
/div
/class
na razie używam (profilaktycznie) ^$all
może należne miejsce jest tu "Polish Privacy Filter"
caringcast.com
> https://github.com/ShadowWhisperer/BlockLists/blob/master/Lists/Tracking#L1260
https://github.com/ShadowWhisperer/BlockLists/
dużo tego
Teoretycznie jak chcesz jeszcze ubić ruch trzecioplanowy na stronie caringcast.com
to przyda się wersja:
$all,domain=caringcast.com
dzięki za propozycje 👍
te caringcast
jest na elektroda
nigdy nie byłem na stronie caringcast.com
, nigdy wcześniej nie widziałem tej domeny
pierwszy raz zobaczyłem to naelektroda.pl
:brain::thought_balloon::satisfied: spawarka.pl##+js(acis, document.createElement, szpieg.com)
nawet nie łączy się z szpieg.com (nie tworzy pierwszej linii dla użycia ^$all
)
:question: 👍 czy jest całkowicie dezaktywowane 6 linijek zaznaczonych na :blue_square: 👎 czy jeszcze muszę iść do :school:
W Firefox legacy lepsze może być:
spawarka.pl##script:contains(/document\.createElement.*szpieg\.com/)
jak ruszy regex dla prostego filtrowania html elementów.
Wersja dla Firefox Quantum i odpowiednio nowe uBO:
spawarka.pl##^script:has-text(/document\.createElement.*szpieg\.com/)
Z kolei skryptlet może zostać jakby strona zaczęła blokować html filtering i dla chromium.
acis
ma niby szansę na to, że zadziała za późno.
~czy wersja z /document\
całkowicie dezaktywowane 6 linijek w type="text/javascript"
zaznaczonych na niebiesko~
2x wersje z /document\
niestety nie działają - ^$all
dopiero wyłapuje szpiega
wersja z acis
działa idealnie - ^$all
nie ma co wyłapywać
Czyli słowa są inaczej ułożone (cudem szpieg.com
jest przed document.createElement
) lub strona nie wspiera html filteringu w wersji skromnej lub na Quantum w wersji dopracowanej.
pierwsze wystąpienie szpieg.com
jest tworzone przez inline-script przez document.createElement
acis
sprawia, że linia z szpieg.com
nie jest tworzona (ta pierwsza z zrzutu https://github.com/MajkiIT/polish-ads-filter/issues/18446#issuecomment-830825173)
mi działa na reklamy między postami to elektroda.pl##[class*=" postlink "]
spacje muszą być bo za dużo wytnie (pic gpu-z) test na https://www.elektroda.pl/rtvforum/topic2888198.html#13911871
Ten wątek został automatycznie zablokowany, ponieważ 60 dni po jego zamknięciu nie było żadnej aktywności. Proszę otworzyć nowe zgłoszenie dla powiązanych problemów.
https://www.elektroda.pl/rtvforum/topic2888198.html#13911871 myList ("AdGuard Base" nie pomaga) reklama 3 x czujki ... + niby "adblock detect" czy tylko napis