Privoxyでホッテントリの見たくない記事を非表示にする方法

子供向けのScratchというコンピュータ言語をご存知でしょうか?

そのScratchに似た言語でSNAP!というものがあります。

SNAP! (Build Your Own Blocks)

上記のページには、以下の文があります。

For research purposes, this site uses Google Analytics to collect aggregate information about, e.g., how often the site is used and what links are followed from it. We do not collect personally identifiable information, but if you have a Gmail account or have ever Googled yourself from your own computer, then, despite their assurances to the contrary, Google does collect such information. We recommend that you use AdBlock Plus, Ghostery, NoScript, and/or Privoxy to protect your browsing privacy. The first two are really easy to install and use; the last two take a bit more effort to whitelist sites you trust. (You might also consider the tracking-free DuckDuckGo search engine.)

ここにお勧めの道具として「AdBlock Plus, Ghostery, NoScript, and/or Privoxy」と書かれています。

Privoxyとはローカルプロキシです。

Privoxy - Home Page

一時期流行したProxomitronと似たようなものです。

説明は省略しますが、今、はてなで読みたくない、と思う記事群を以下のように見えないようにしてみましょう。

f:id:oceo:20141229110358p:plain

やっつけの設定ですが、

user.action

{ +filter{rlee1984_filter} }
b.hatena.ne.jp

{ +filter{miraihack_filter} }
b.hatena.ne.jp

{ +filter{orangestar_filter} }
b.hatena.ne.jp

{ +filter{tenku65820_filter} }
b.hatena.ne.jp

user.filter

FILTER: miraihack_filter miraihack filter
s@\
\s*<div class="entry-contents">\n\
\s*<h3 class="hb-entry-link-container" ><a href=".+miraihack.+</h3>\n\
\s*\n\
\s*<ul class="entry-data ">\n\
\s*<li class="description">\n\
(\s*<blockquote>.*</blockquote>\n)*\
(\s*<span.*</span>\n)*\
\s*</li>\n\
(\s*<li class="category">\n)*\
(\s*<a href=".*" class=".*">.*</a>\n)*\
(\s*</li>\n)*\
\s*<li class="date">.*</li>\n\
\s*</ul>\n\
\s*</div>\n\
\s*<ul class="entry-meta">\n\
\s*<li class="domain">.*</li>\n\
(\s*<li class="tag">\n)*\
(\s*<a href=".*">.*</a>\n)*\
(\s*</li>\n)*\
\s*</ul>\n\
@\
hoge\
@ig

FILTER: rlee1984_filter rlee1984 filter
s@\
\s*<div class="entry-contents">\n\
\s*<h3 class="hb-entry-link-container" ><a href=".+rlee1984.+</h3>\n\
\s*\n\
\s*<ul class="entry-data ">\n\
\s*<li class="description">\n\
(\s*<blockquote>.*</blockquote>\n)*\
(\s*<span.*</span>\n)*\
\s*</li>\n\
(\s*<li class="category">\n)*\
(\s*<a href=".*" class=".*">.*</a>\n)*\
(\s*</li>\n)*\
\s*<li class="date">.*</li>\n\
\s*</ul>\n\
\s*</div>\n\
\s*<ul class="entry-meta">\n\
\s*<li class="domain">.*</li>\n\
(\s*<li class="tag">\n)*\
(\s*<a href=".*">.*</a>\n)*\
(\s*</li>\n)*\
\s*</ul>\n\
@\
hoge\
@ig

FILTER: orangestar_filter orangestar filter
s@\
\s*<div class="entry-contents">\n\
\s*<h3 class="hb-entry-link-container" ><a href=".+orangestar.+</h3>\n\
\s*\n\
\s*<ul class="entry-data ">\n\
\s*<li class="description">\n\
(\s*<blockquote>.*</blockquote>\n)*\
(\s*<span.*</span>\n)*\
\s*</li>\n\
(\s*<li class="category">\n)*\
(\s*<a href=".*" class=".*">.*</a>\n)*\
(\s*</li>\n)*\
\s*<li class="date">.*</li>\n\
\s*</ul>\n\
\s*</div>\n\
\s*<ul class="entry-meta">\n\
\s*<li class="domain">.*</li>\n\
(\s*<li class="tag">\n)*\
(\s*<a href=".*">.*</a>\n)*\
(\s*</li>\n)*\
\s*</ul>\n\
@\
hoge\
@ig

FILTER: tenku65820_filter tenku65820 filter
s@\
\s*<div class="entry-contents">\n\
\s*<h3 class="hb-entry-link-container" ><a href=".+tenku65820.+</h3>\n\
\s*\n\
\s*<ul class="entry-data ">\n\
\s*<li class="description">\n\
(\s*<blockquote>.*</blockquote>\n)*\
(\s*<span.*</span>\n)*\
\s*</li>\n\
(\s*<li class="category">\n)*\
(\s*<a href=".*" class=".*">.*</a>\n)*\
(\s*</li>\n)*\
\s*<li class="date">.*</li>\n\
\s*</ul>\n\
\s*</div>\n\
\s*<ul class="entry-meta">\n\
\s*<li class="domain">.*</li>\n\
(\s*<li class="tag">\n)*\
(\s*<a href=".*">.*</a>\n)*\
(\s*</li>\n)*\
\s*</ul>\n\
@\
hoge\
@ig

こうすることで、miraihack、rlee1984、orangestar、tenku65820の記事がホッテントリから見れなくなり、「hoge」という文字列に置換されます。

今のネット社会、こうやって自己防衛することも大事だと思います。