5

スクレーパー/不良ボットを検出するために、HTML本体に小さなハニーポット画像を設定したいと思います。

誰かが以前にこのようなものを設定したことがありますか?

私たちはそれを実現するための最善の方法は次のようになると考えていました。

a)次の方法でhtmlをコメントアウトします。

<!-- <img src="http://www.domain.com/honeypot.gif"/> -->

b)次の方法で画像をブラウザから非表示にするcssスタイルを画像に適用します。

.... id="honeypot" ....

#honeypot{
    display:none;
    visibility:hidden;
}

上記を使用して、適切で実際のユーザーエージェントが画像をプル/レンダリングしようとする状況を誰かが予測しますか?

honeypot.gifは、ロギングを行うmod_rewrittenphpスクリプトになります。

上記の2つの条件は、適切にコーディングされたスクレーパーによってスキップされる可能性があることは理解していますが、少なくとも、非常に汚れた条件についてはある程度の洞察が得られます。

これを行うための最良の方法に関する他の指針はありますか?

4

2 に答える 2

3

コメント内にあるため、ボットはimgタグを無視します。

代わりに、同じサイト(ボットが深度に敏感な場合は、できれば同じディレクトリ内)にトリガーURLへのリンクを含む非表示のdivを作成することを検討してください。

于 2011-09-07T20:42:21.237 に答える
0

IMO優れたスクレーパーは、を使用してHTMLを渡す方法を知っていると思いますSGML parser。コメントされた画像をスキップするだけですが、間違っている可能性があります。

せいぜいそれが起こったときにあなたにアイデアを与えるでしょうが、スクレーパーで対抗する方法を提供しません。ほとんどのボットはおそらくこれらを気にしないので、ある種のCookieベースのソリューションを考え出すほうがよいでしょう。また、リクエスト間の画像パスをランダム化し、短時間で期限切れにすることもできます。

リファラーをサポートしていないブラウザーや、リファラーを非表示/変更する人々を気にしないのであれば、リファラーをチェックすることは明らかです。

于 2011-09-07T21:00:05.697 に答える