web-dev-qa-db-ja.com

ボットのインデックス作成に使用されるIPアドレスのインデックスはありますか?

トラフィックが最小のページがありますが、ヒットしたときに静的な通知を設定します。今、ボットを無視したいので、今やっていることは、表示されるボットを「通知なし」リストに追加することです。

インデックス作成ロボットが使用するIPアドレスの参照リストはありますか?

例:次のようなリスト

$no_mail = array(
    '67.195.115.105', // yahoo bot
    '207.46.199.50', // msn bot
    '61.135.249.246', //youdao bot
    '207.46.199.32', // msn bot
);
7
artlung

http://www.user-agents.org/ はあなたが探しているものかもしれません。

すべての検索エンジンは膨大な数のIPアドレスを使用します。代わりに、ユーザーエージェント文字列を確認する必要があります。すべてのクローラーの適切なリストについては、 このページ を確認してください。

PHPでは、次のように機能します。

$bots = array( 'googlebot', 'msnbot', 'Slurp', 'mediapartners-google' );
$isRobot = false;
$ua = strtolower( $_SERVER['HTTP_USER_AGENT'] );

foreach ( $bots as $bot ) {
  if ( strpos( $ua, $bot ) !== false )
    $isRobot = true;
}

if ( !$isRobot ) {
  // do your thing
}
2
DisgruntledGoat

これをrobots.txtファイルに入れてみませんか?

User-agent: *
Disallow: /path/page-you-dont-want-crawled.html

そうすれば、ボットを探し続ける必要がなくなります。 Google、Yahoo、MSNには数百のボットがあり、おそらく異なるIPアドレスと常に作成されている新しいIPアドレスを持っているということは何でも賭けます。上記を追加することで、ファイルページでも同じようにすべての手間がかかりません。

1
Ben Hoffman

http://ekstreme.com/phplabs/search-engine-authentication (および http://www.googleのGoogleヘルプセンターの記事に加えて、 .com/support/webmasters/bin/answer.py?answer = 8055 Googlebotの確認について)。 http://ekstreme.com/phplabs/crawlercontroller.php にもいくつかのコードがあります。これはクローラーを認識するために使用できます。現在認識しています。

一般に、一部のユーザーエージェントは通常のユーザーによって使用され、一部のIPアドレスは共有される可能性があるため、ユーザーエージェント名またはIPアドレスのみに依存しないことが重要です。

ただし、これを電子メール通知にのみ使用している場合は、おそらくユーザーエージェントの単純な既知のパターンを無視し、誤検知と誤検知に対処することになります。サイトでアクティブな最も一般的なクローラーのログファイルを確認し、ユーザーエージェント名の一意の部分を確認します(「googlebot | Slurp | msnbot | bingbot」を使用するだけで十分な場合があります)。

1
John Mueller

ボットのフィルタリングに真剣に取り組んでいる場合は、何らかの方法でローカルリストを実装する必要があります。時々、ランダムに見えるIPが私が管理しているWebサイトに夢中になります。大学のプロジェクト、実験的に見えるが一般的に認識されていない、実装が不十分なボット、これらの種類のボット。

また、Cuilボット(Twiceler)は悪魔です。

1
Thomas

Useragentにアクセスできますか?それは私には本当のユーザーとボットとは何かを判断するためのより良い方法のようです-正規のクローラーがアドレスを変更するのがより弾力性があり、ボットになりすましている場合は、おそらくメールを取得したくないでしょうとにかく。

0
Cebjyre

これを試して...

$UI_Agent = $_SERVER['HTTP_USER_AGENT'];

if(eregi("bot", $UI_Agent)) {
    // do your bot stuff here
}

HTH、バド

0
Bud