アドレス収集ロボット対策


世の中には無尽蔵にアドレスを収集するロボット(spambot)があります。悪質な広告業者等では、こうしたアドレス収集ロボットを使用して得たアドレス宛に、スパムメールを送りつけるようです。あるのはしょうがないとして、アドレス収集ロボットへの対処方法の一つに、Webページに書くメールアドレスをエンコード化して、“賢くない”spambotには拾われないようにする方法があります。
対処方法は次の2つ。 アドレスをエンコードするには、サーバ管理者のスパム対策アドレス収集ロボットを捕獲するの下にある「さらにおまけ」の「メールアドレスをエンコード」する方法を使わせてもらうと便利です。または、下にある一覧表を参考にしてください。

Java Scriptを使用する場合は、メールアドレスを記載したファイルを呼び出すだけです。ただし、Java Scriptを使用すると、Java Scriptが有効になっていないと表示されませんので、エンコード化と併用すると親切です。


例)アドレスをエンコードする
mail@domail.co.jpをエンコード化すると、
mail@domain.co.jp
となります。このエンコードをWebページに記述すると、Webページ上ではmail@domail.co.jpと表示されますが、賢くないspambotでは、エンコードされた文字しか見えず、メールアドレスを認識されません。


例)Java Scriptを使用する
メールアドレス(mail@domaim.co.jp)を次のように記述したファイルを作成します。ファイル名は適当にmail.jsでいいでしょう。
str="メールアドレス";
document.write(str.link("mailto:mail@domain.co.jp"));
そうしてWebページに次のように記述してmail.jsを呼び出します。
<script src="mail.js"></script>
<noscript> ごめんなさい。スクリプトを使用しています。</noscript>
実際には、Webページを見ると、mail.jsに記述したstrに指定した“メールアドレス”が表示されますが、クリックするとメーラーが起動してあて先にメールアドレスが入ります。


例)エンコードとJava Scriptを併用する
次のように記述してmail.jsファイルにして保存します。
str="メールアドレス";
document.write(str.link("mailto:[メールアドレス]"));
Webページには次のよう記述すると、Java Scriptが使用できる環境ではmail.jsを呼び出して使用しますが、そうでない場合は、エンコードしたアドレスを表示します。
<script src="mail.js"></script>
<noscript>
<a href="mailto:&#109;&#97;&#105;&#108;&#64;&#100;&#111;&#109;&#97;&#105;&#110;&#46;&#99;&#111;&#46;&#106;&#112;"> &#109;&#97;&#105;&#108;&#64;&#100;&#111;&#109;&#97;&#105;&#110;&#46;&#99;&#111;&#46;&#106;&#112;
</a>
</noscript>


補足:エンコード一覧
!&#33
"&#34
#&#35
$&#36
%&#37
&&#38
'&#39
(&#40
)&#41
*&#42
+&#43
,&#44
-&#45
.&#46
/&#47
0&#48
1&#49
2&#50
3&#51
4&#52
5&#53
6&#54
7&#55
8&#56
9&#57
:&#58
;&#59
<&#60
=&#61
>&#62
?&#63
@&#64
A&#65N&#78
B&#66O&#79
C&#67P&#80
D&#68Q&#81
E&#69R&#82
F&#70S&#83
G&#71T&#84
H&#72U&#85
I&#73V&#86
J&#74W&#87
K&#75X&#88
L&#76Y&#89
M&#77Z&#90
[&#91
\&#92
]&#93
^&#94
_&#95
`&#96
a&#97n&#110
b&#98o&#111
c&#99p&#112
d&#100q&#113
e&#101r&#114
f&#102s&#115
g&#103t&#116
h&#104u&#117
i&#105v&#118
j&#106w&#119
k&#107x&#120
l&#108Y&#121
m&#109z&#122
{&#123
|&#124
}&#125
~&#126


INDEX