Technically Impossible

Lets look at the weak link in your statement. Anything "Technically Impossible" basically means we haven't figured out how yet.

20210816

https://espio999.tumblr.com/post/168035066978
espio999.tumblr.com


もう日本株については、何も言うことがない。
とてもバカバカしい。

ひふみワールド -0.69% 122.24
TOPIX -1.61% 106.67
さわかみ -1.53% 106.58
ポートフォリオ -1.41% 103.69
ひふみらいと 0.06% 101.86
ひふみ投信 -1.79% 101.12
日経平均 -1.62% 100.29

Chromeで特定ドメインへの接続をブロックする。

どうしてもインターネット広告が鬱陶しい。広告自体は必要悪とはいえ、そこに表示される画像が気に障る。広告自体の「存在」は肯定するが、それが表示するものだけをブロックすればよい、と発想する。

まずChromeから特定ドメインへのアクセスをブロックする方法を調べた。

chromeenterprise.google

  • ブロックリストを設定する。
  • Windowsではレジストリに設定する。
  • ブロックしたい宛先を、String Valueに設定する。
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\URLBlocklist

f:id:espio999:20210817005852p:plain
f:id:espio999:20210817005906p:plain

今回はString Valueで設定し、接続がブロックできることを確認した。Multi-String Value(リスト)で指定しても機能するかを調べる必要がある。

URLを入力して接続する場合はブロックされるが、サイトからの接続がブロックされていない。画像ブロックを設定してみたものの、やはり表示され続けている。

f:id:espio999:20210817005935p:plain

imgタグで画像表示している例。ドメインをブロックしているが、画像表示される。

<img
class="ob-rec-image ob-show" aria-hidden="true" onload="this.className+=' ob-show'"
alt="Xbox Game PassのPC版『NieR:Automata』がSteamよりもよいバージョンだったため、Steam版所有のファンが複雑な思いを抱く"
title="Xbox Game PassのPC版『NieR:Automata』がSteamよりもよいバージョンだったため、Steam版所有のファンが複雑な思いを抱く"
onerror="OBR.extern.imageError(this)" loading="lazy"
src="https://images.outbrainimg.com/transform/v3/eyJpdSI6ImUyMTc5ZjMyNDRjMzc1ZGQzZWJlOGM4Y2I3Yjk5YWI4OTY2MjczMDg5NTkwMDMxYjg0YzY0YjNhZGQwOTgzODIiLCJ3IjozMDAsImgiOjIwMCwiZCI6MS41LCJjcyI6MCwiZiI6NH0.webp">

CSSを組み合わせて、spanタグ内の背景画像として画像表示している例。ドメインをブロックしているが、やはり画像表示される。

<span
class="thumbBlock"
style="background-image: url(&quot;https://images.taboola.com/taboola/image/fetch/f_jpg%2Cq_auto%2Ch_184%2Cw_220%2Cc_fill%2Cg_faces:auto%2Ce_sharpen/http%3A//cdn.taboola.com/libtrc/static/thumbnails/ac8911096225bfc48618bced9c3bff52.jpg&quot;);">

画像表示、非表示の切り替えスクリプト

javascript:void((function(){var d=document;if(!d.getElementById('css-add-on')){var s=d.createElement('style');s.id='css-add-on';s.innerHTML='*%7bcolor%3a#333333 !important%3bbackground%3a#FFFFFF !important%3b%7dimg,embed,iframe,object%7bdisplay%3anone%3b%7d';d.body.appendChild(s);}else{var s=d.getElementById('css-add-on');d.body.removeChild(s);}})());

検討事項

  • 画像の非表示と、背景画像の非表示の仕組みは異なるのか?コントロール対象が異なるのか?
  • いっそ広告用JavaScriptの動作を抑止したらどうか?