easylist / easylist

EasyList filter subscription (EasyList, EasyPrivacy, EasyList Cookie, Fanboy's Social/Annoyances/Notifications Blocking List)
https://easylist.to
2.24k stars 730 forks source link

google.com #6024

Closed Yuki2718 closed 4 years ago

Yuki2718 commented 4 years ago

List the website(s) you're having issues:

https://www.google.com/search?q=nintendo+switch&oq=nintendo+&aqs=chrome.0.0j69i57j0l6.2407j0j4&sourceid=chrome&ie=UTF-8

(Search for "nintendo switch" without quotation) on Google

What happens?

Ads: original reports:

https://forums.lanik.us/viewtopic.php?p=156417#p156417
https://old.reddit.com/r/uBlockOrigin/comments/imcjbx/2_ads_new_ads_on_google_search/

google

So far only seen on .com and not on .co.jp, but not sure if it's specific to .com as it's not easy to reproduce even on .com.

List Subscriptions you're using:

uBO default

Your settings

Other details:

At the time I accessed from US (Chicago) IP.

###rhs is the top node that can be safely hidden and seems to be unique so I suggest google.com###rhs but probably more test needed.

THEtomaso commented 4 years ago

I've had google.*###rhs in my own filter list for a long time, so I think it's safe. :)

Yuki2718 commented 4 years ago

Thank you for confirmation! Do you know if that appears on local Google search too (as you use .* probably so, just want to confirm)?

THEtomaso commented 4 years ago

I use .* for all of my Google rules, but I've had this particular one in my filter list for so long, that I don't even remember creating it, or what I was targeting.

But of course, since .* isn't a valid ABP-syntax, a site-specific EasyList rule would have to look like this (not alphabetized):

google.com,google.ad,google.ae,google.com.af,google.com.ag,google.com.ai,google.al,google.am,google.co.ao,google.com.ar,google.as,google.at,google.com.au,google.az,google.ba,google.com.bd,google.be,google.bf,google.bg,google.com.bh,google.bi,google.bj,google.com.bn,google.com.bo,google.com.br,google.bs,google.bt,google.co.bw,google.by,google.com.bz,google.ca,google.cd,google.cf,google.cg,google.ch,google.ci,google.co.ck,google.cl,google.cm,google.cn,google.com.co,google.co.cr,google.com.cu,google.cv,google.com.cy,google.cz,google.de,google.dj,google.dk,google.dm,google.com.do,google.dz,google.com.ec,google.ee,google.com.eg,google.es,google.com.et,google.fi,google.com.fj,google.fm,google.fr,google.ga,google.ge,google.gg,google.com.gh,google.com.gi,google.gl,google.gm,google.gp,google.gr,google.com.gt,google.gy,google.com.hk,google.hn,google.hr,google.ht,google.hu,google.co.id,google.ie,google.co.il,google.im,google.co.in,google.iq,google.is,google.it,google.je,google.com.jm,google.jo,google.co.jp,google.co.ke,google.com.kh,google.ki,google.kg,google.co.kr,google.com.kw,google.kz,google.la,google.com.lb,google.li,google.lk,google.co.ls,google.lt,google.lu,google.lv,google.com.ly,google.co.ma,google.md,google.me,google.mg,google.mk,google.ml,google.com.mm,google.mn,google.ms,google.com.mt,google.mu,google.mv,google.mw,google.com.mx,google.com.my,google.co.mz,google.com.na,google.com.nf,google.com.ng,google.com.ni,google.ne,google.nl,google.no,google.com.np,google.nr,google.nu,google.co.nz,google.com.om,google.com.pa,google.com.pe,google.com.pg,google.com.ph,google.com.pk,google.pl,google.pn,google.com.pr,google.ps,google.pt,google.com.py,google.com.qa,google.ro,google.ru,google.rw,google.com.sa,google.com.sb,google.sc,google.se,google.com.sg,google.sh,google.si,google.sk,google.com.sl,google.sn,google.so,google.sm,google.sr,google.st,google.com.sv,google.td,google.tg,google.co.th,google.com.tj,google.tk,google.tl,google.tm,google.tn,google.to,google.com.tr,google.tt,google.com.tw,google.co.tz,google.com.ua,google.co.ug,google.co.uk,google.com.uy,google.co.uz,google.com.vc,google.co.ve,google.vg,google.co.vi,google.com.vn,google.vu,google.ws,google.rs,google.co.za,google.co.zm,google.co.zw,google.cat###rhs

Quite a monster! :)

Yuki2718 commented 4 years ago

Yeah, I used that monster in the previous commit. But for the current ads I could only reproduce once - reloading the page and it went away. I'll test with several local Google searches tomorrow.

THEtomaso commented 4 years ago

At least, it hasn't broken anything for Google searches, that I've noticed in any way. But then again, I prefer to block more stuff than average adblock users.

liamengland1 commented 4 years ago

I've had google.*###rhs in my own filter list for a long time, so I think it's safe. :)

This is not an acceptable filter for easylist. The id rhs is used for the entire right column of google results.

image

image

image

image

THEtomaso commented 4 years ago

The id rhs is used for the entire right column of google results.

Oh, there you go.. Personally, I never missed it. Actually, that's probably what I inteded to block! :)

krystian3w commented 4 years ago

AdGuard / EasyList now use:

https://github.com/easylist/easylist/blob/e1d3f829f076a245121d4c831b217e6c57f8e4e3/easylist/easylist_general_hide.txt#L21239-L21240

uAssest also have duplicates with added "google.*", maybe some list use ghide for google.

Yuki2718 commented 4 years ago

@llacb47 Whoops, I should have not missed that. Then the next candidate will be ###rhs > .cu-container. uBlock filters has google.*###center_col > #taw > #tvcap > .cu-container > .commercial-unit-desktop-top so I guess the rule still has a chance of FP. Anyway I can't reproduce now.

@krystian3w Probably the first rule can be replaced with a new rule for this issue. Not sure about the second, will test if I could reproduce again.

krystian3w commented 4 years ago

Try many change country to USA and language to English from "Japanese". (Unless you get a rebuilt version of the ad.)

https://www.google.com/preferences?hl=en&fg=1

This may needed for reproduce some google ads without use VPN.

Yuki2718 commented 4 years ago

Try many change country to USA and language to English from "Japanese".

Will try from now on. Today I had too many things to do on real life. Usually I just change browser locale and relaunch with an according VPN country.

Yuki2718 commented 4 years ago

Succeeded to reproduce with, again, US IP and confirmed the AG rule doesn't hide it. What else I should test? Is it possible to save DOM to a file? Saved inner HTML of #rhs, not sure if it helps:

```

Complementary Results

Ads·See Nintendo...
Ads·See Nintendo Switch Video...
```
krystian3w commented 4 years ago

Formatted with online tool and colorized by HTML5 pastebin idea:

https://pastebin.com/vTunQHjR
Yuki2718 commented 4 years ago

So far .com only, no luck with .ca, .co.uk, .de .fr, or .jp, though I got a different ads on .de which is already covered by some rule (seen only if I disabled cosmetic).

Yuki2718 commented 4 years ago

Tested with .com.tr and don't see the ads. So at least currently it seems to be .com only and also I'm getting to feel google.com###rhs > .cu-container is fairly safe.

jameshilliard commented 4 years ago

Try this:

google.*###rhs > div:has(div[role="heading"] > span:has-text(/^Ads/))
krystian3w commented 4 years ago

Mission fail if interface language other than English and no have "Ads" in strings (e.g. Greek, Russian, Ukraine, Belaruse, Korean, Japanese, Thai).

jameshilliard commented 4 years ago

Ah, figured those would be handled by the foreign language lists.

Yuki2718 commented 4 years ago

Even without the localization matter, procedural cosmetic filters should be avoided as far as possible. Also ABP doesn't support domain wildcard in cosmetic filters like google.* so EL doesn't use.

jameshilliard commented 4 years ago

procedural cosmetic filters should be avoided as far as possible

Hmm, I wasn't able to come up with anything else that looked to be reliable.

Yuki2718 commented 4 years ago

Hmm, I wasn't able to come up with anything else that looked to be reliable.

If you see new ads than what had been discussed here, can you make another issue?

jameshilliard commented 4 years ago

Issue #6124 is somewhat related, not an exact match(it's for the top carousel) but likely derived from the same code on google's side.

Yuki2718 commented 4 years ago

You need to provide all the details.

krystian3w commented 4 years ago

Also no mix uBO syntax with ABP supported names:

https://help.eyeo.com/en/adblockplus/how-to-write-filters https://adblockplus.org/filter-cheatsheet (legacy / outdated)

Yuki2718 commented 4 years ago

Closing, I don't see this ad any more.