営業担当者の電子メールアドレスを含む、インターネットに面した公開 Web サイトを作成しています。
「mailto」を生成し、そのアドレスからの電子メールを表示するが、スパムボットがアドレスを取得するのを制限するには、どのようなプログラミング オプションが必要ですか?
営業担当者の電子メールアドレスを含む、インターネットに面した公開 Web サイトを作成しています。
「mailto」を生成し、そのアドレスからの電子メールを表示するが、スパムボットがアドレスを取得するのを制限するには、どのようなプログラミング オプションが必要ですか?
Facebookがテキストの代わりに画像を表示することでそれを行っていることを私は知っています. もちろん、画像に OCR を使用することもできますが、メール アドレスを 1 つだけ指定する必要はありません。
スパム ボットにメール アドレスを取得させたくない場合は、誰にも見せないことが最善の方法です。フォームを表示する「この人に連絡する」へのリンクを表示します。サーバー側では、そのフォームの内容を受信者に送信し、送信者の電子メール アドレスを返信します。メッセージの下部に、「このメールがスパムの場合は、「ここをクリックしてこのユーザーをブロックしてください」」という短い宣伝文句を含めます。これにより、送信者の IP がブロックされます。私はこの方法を何度も使用してきましたが、一度も不満を感じたことはありません。
あなたはそれを難読化することができますが、私見はあなたが何をしても、いつの日かスパマーがあなたの電子メールアドレスを取得するでしょう. 未来は、電子メール アドレスを秘密にしようとするのではなく、スパム フィルターにあります。
私が過去に行ったことは、javascriptを使用してmailto:リンクを構築することです。リンクをクリックするだけで、JavaScriptの実行に時間がかかるスパムボットをまだ知らないので、これはユーザーにとって便利です。
ヤコブ・ニールセンのuseit.comのウェブサイトからアイデアを得たと思います。
ページヘッダーには、次のJavaScriptが含まれています。
<script name="mailto" language="JavaScript">
//<![CDATA[
function load()
{
c1 = "bcl"
c2 = "brian"
c3 = "lane"
c4 = "com"
// Fill in the addresses
document.getElementById("contact1").innerHTML = "<a href=" + "mail" + "to:" + c1 + "@" + c2 + c3 + "." + c4 + ">" + c1 + "@" + c2 + c3 + "." + c4 + "</a>";
}
//]]>
</script>
ページが読み込まれたときに読み込むように指示します。
<body onload="load()">
そして、ページの本文にスパムトラップへのリンクを配置します。
<span id="contact1"><a href="mailto:spam@brianlane.com">spam@brianlane.com</a></span>
私は解決策を持っています、まあ、もっと理論です。問題は、ボットがページを解析することです。テキストを取得できます。Javascript を介して洗練された方法でページに挿入されている場合でも。
だから、あなただけのCSS3疑似要素!リンクにはなりませんが、メールは表示され、実際のテキストにはなりません。このようなもの:
.email::after{ content:'myemail@gmail.com'; }
繰り返しますが、これは理論です。これらの邪悪な人々がどこまでそれを手に入れることができるかはわかりませんが、これはかなり安全だと思います.
電子メール サーバーはスパムのフィルタリングが得意になっており、ウェブページ上の電子メール テキストを「保護」するための巧妙なトリックを作成する理由がないため、これは問題ではないと私は考えています。
PrivateDaddy を見てみましょう - あなたが探しているものを正確に実行すると思います: JavaScript のサポートが無効になっているブラウザーでも動作する、完全に自動化された目立たない電子メール クローキングです。こちらから入手できます(もちろん無料)
エンコーダーをチェックしてください!
これが静的な HTML ページではなく、ASP.NET、JSP、Coldfusion、または PHP ページである場合は、すべての営業担当者のリストを含むドロップダウン ボックス、コメント用のテキスト ボックス、および「お問い合わせ先」を表示できます。 " (つまり、[送信] ボタン)。ボタンをクリックすると、サーバー側のコードが呼び出され、メールが作成され、配信のためにローカル メール サーバーに送信されます。営業担当者の電子メール アドレスや、会社の電子メール形式 (例: firstname.lastname@yourcompany.com) が外の世界に知られることはありません。
メールの難読化などを使用できます
これは難しい問題です。クリックできるように Web ブラウザーで解析できるように電子メールを投稿すると、スパムボットによって解析される可能性があります。クリックできない場合 (画像の場合など)、ユーザーにとってはより困難です。一方ではユーザーにとって完璧でシームレスなエクスペリエンスが提供され、他方では完璧なスパム ブロックが提供されます。ただし、メール アドレスを個別のトークンとして取り込む単純な CSS または JavaScript は、通常、何もないよりはましです。
電子メール アドレス「us...@mail.com」の一部のみをキャプチャにリダイレクトするリンクとして表示し、Google グループのように完全な電子メール アドレスを表示することができます。
以前は、メール アドレスに対して古典的な ASP 文字列 cat を使用していました。スパムボットはソースを読み取りますが、サーバー側のコードは解析しないという壮大なアイデアです。それが実際に機能するかどうかはわかりません。
私が書いたものはあなたのために働くでしょうか?
http://kevin-le.appspot.com/viewSource/sourceShare/asmRevealer.js
...そして、ここでデモを見ることができます:
http://kevin-le.appspot.com/extra/contact
mailto で動作するので、ユーザーにとっては便利ですが、スパムボットはあなたの要求を拾うことができません。デモを 1 分見れば一目瞭然です。
いずれにせよ、mailto: プロトコルはほとんど機能していないように見えます... 便利ですが、解析と収集が簡単すぎます。
さらに、欠点もあります。Web カフェを使用している場合、既定の電子メール クライアントがあればそれを呼び出してしまい (もしあれば!)、アカウントに設定されていないため、機能しません。オンラインの電子メール マネージャーのみを使用している場合も同様です...
考えられる回避策は、電子メールを装飾し、ユーザーに入力または修正を任せることです: foo (at) example.com または foo-NOSPAM@REMOVE-THIS-example.com は一般的なスキームです (スパマーが解読しようとしないことを願っていますこれらの一般的なスキーム!)、グラフィカルな電子メール アドレスも別の方法です。
または、指摘されたように、可能であれば、どこからでも使用できるロボットに対する合理的な保護形式を備えた連絡先フォームを用意するのが最善の方法です。人々は電子メールを求めるフォームに反抗するかもしれませんが (応答のために!)、免責事項も役立つかもしれません... :-)