
Regulární výraz/filtr k odstranění/blokaci reklamy
stranka.cz###e6ecb041509b66680f9af25e06ba50f4e
Ahoj, potřeboval bych nadefinovat, jak blokovat ten 33-ti znakový řetězec, který se mění po každé refreshi stránky a obsahuje vždy malá písmena a číslice. Zkoušel jsem laicky něco zplodit, ale neujalo se. Díky ochotným sousedům.
Takže to zase oživím. Aktualne.cz překonalo neukládání cookies tím, že pokud nejsou uložené cookies, na stránce se nezobrazí vůbec nic (bílá stránka). Uměl by někdo udělat filtr pro ABP nebo uBlock na toto? Pozn.: Ta mezera uprostřed toho řetězce tam skutečně má být, není to chyba. A řetězce se samozřejmě mění po refreshi stránky.
Anebo alespoň na ###sas_39965_73740 (náhodná čísla). To už je hotový filtr, ale obsah se mění.
Užij si to
No ještě pokoumám jak by to nějak šlo.
Když zablokuješ sas_ například pomocí :has() tak to tu reklamu hezky zablokuje, jenže javascript tam vytvoří úplně jinou strukturu. Tu zablokuješ třeba pomocí cesty k inframe, hezky se to zas zablokuje, jenže javascript asi zablokuje celej web
Každopádně asi nejelegantnější řešení je na aktualne.cz típnout cookies, reklamu to hezky vyeliminuje hned a funkcionalitu to omezí jen trochu, např. videa jdou, jen asi nejdou online streamy, i když se ten iframe zviditelní, tak tam aktualne.cz nic nepošle.
... a jen takový zkušební nástřel:
aktualne.cz##div[id^="sas_"]
aktualne.cz##div[style*="height:200px"]
trošku to funguje na tu horní reklamu, ještě to ale neblokuje celej prostor, tak to nakonec snad nějak vykoumat pude. Zkusím doplnit :has() co to udělá... když tak to tu zedituju.
Už jsem psal, že to aktualne.cz nějak poměnilo a vypnutím cookis dochází k tomu, že se stránka nenačte vůbec.
"Když zablokuješ sas_ například pomocí :has() " - tohle neznám. Vygouglioval jsem si sice, že to je něco do Javascriptu, ale to je pro mě Španělka. Tenhle filtr se mi tam chytá: aktualne.cz##div[id^="sas_"]
Nevím jak tobě, ale mně to bez cookies funguje (firefox a chrome).


Toto:
aktualne.cz##div[id^="sas_"]
se ti tam chytá, je ale třeba ještě přidat:
aktualne.cz##div[style*="height:200px"]
a asi tam reklama nahoře nebude, ale bude tam volné místo.
To se začistí tím, že se do těch pravidel přidá :has()
aktualne.cz##div:has(div>div>div[id^="sas_"])
aktualne.cz##div:has(div>div>div[style*="height:200px"])
Jenže toto to začistí tak dokonale, že aktualne.cz boj o reklamu vzdá a típne celou stránku a to tak, že nastaví hromadě prvků display none, což ale nevadí, stačí těm prvkům nastavit display block
Jo a has se dá vysvětlit tak, že máš prvek div, který chceš zablokovat, pokud je v něm cesta div>div>div a to poslední div má výšku 200px.
Jdu pokoumat jakým těm prvkům je potřeba nastavit display block
Když tak to můžeš vykoumat sám
Jo a has a style, kterým se pak bude nastavovat style, funguje myslím jen v ublock origin, který rozhodně doporučuju, protože je nejlepší.
Mám taky Firefox a prostě po zákazu ukládání cookies se zobrazí bílá stránka.
Já jsem tam dal ty filtru oba (ty tvoje), ale jak vidíš, podle logu se na stránce neuplatnil.
aktualne.cz##div:has(div>div>div[id^="sas_"]) - tenhle filtr sice funguje, ale když se načte celá stránka, tak vypadne a zůstane jenom bílá plocha.
Šak s tou bílou stránkou po tom použití has jsem ti to už popsal.
aktualne.cz prostě boj o reklamu vzdá a nastaví display none obsahu, stačí mu nastavit display block.
Ale jak koukám, je to nastaveno přes jednu generovanou proměnnou, která se těm prvkům přidává na konec a té se nastavuje to none. Buď zjistit odkud se bere to nastavení nebo všem elementům nastavit block.
Nebo se to může řešit i tak, že se to bude dělat bez blokování toho volného místa, jen s tím prvním pravidlem, co ti fungovalo, ale to volné místo se nebude blokovat, ale dá se mu výška 0px, třeba pak aktualne nebude nastavovat všem těm elementum none.
Jenže tohle je už vyšší liga a tam já nesahám.
Momentálně mám tu stránku ve stavu (viz. příloha).
Asi toho už víc nedosáhnu (ty texty "Reklama" jsou taky neodstranitelné).
o kterou reklamu konretne jde? Aktualne resim pres stylish takhle:
Konkrétně ty prvky, které jsou kolem slova "reklama". Viz. příloha.
Edit: Zkusil jsem do userContent dodat ten tvůj kód, ale to ustřihne celý vršek stránky až po obrázek. Zmenšením té hodnoty se to zdá, že je po problému (alespoň nahoře). Dík!