it-gundan.com

asp.net 웹 사이트에서 검색 엔진 봇을 안정적으로 감지하는 방법은 무엇입니까?

Asp.net 웹 사이트에서 봇 생성 활동 (클릭/페이지 방문) 등을 감지하는 가장 좋은 방법은 무엇입니까? 외부 웹 사이트로 생성 된 리드를 추적하는 웹 사이트가 있고, 리드를 생성하는 사용자의 IP를 추적하지만 Google 및 기타 검색 로봇이 생성 한 많은 리드를보고 있습니다. 이 활동을 필터링하는 가장 좋은 방법은 무엇입니까? 사용자 에이전트 문자열을 테스트하고 알려진 IP 주소를 기반으로 필터링하는 것을 들었습니다. 둘 다 다양한 소스에서 데이터 덤프로 사용할 수 있습니다. 어떤 것이 가장 적합한 지 잘 모르겠습니다.

감사합니다.

2
user1081

@Kinopiko가 말했듯이 Bots는 esepcialy google과 같은 최고의 제품이거나 bing은 명확한 UserAgent를 남깁니다.

코드가 어떻게 생겼는지 모르겠으므로 어떻게 해야할지 말할 수는 없지만 Asp.Net에서 UserAgent를 찾으려면 WebForm, CodeBehind 또는 MVC Controller의 Request.UserAgent를 참조하십시오.

2
Sruly

죄송합니다. asp.net 웹 사이트에 대해서는 전혀 몰랐지만 평판 좋은 검색 엔진은 봇임을 알려주는 사용자 에이전트 문자열을 보내며 로그 파일에서 사용할 수 있습니다. 또 다른 공짜는 /robots.txt를 찾는 것입니다.

내 체커는 다음과 같습니다 (Perl).

sub is_bot
{
    my ($user_agent) = @_;
    if ($user_agent =~
    /msnbot
        |www\.cuil\.com
    |Yahoo!\s+Slurp
    |Googlebot
    |Speedy\sSpider
    |MLBot
    |princeton crawler
    |accelobot
    |crawler\@dotnetdotcom
    |help\.naver\.com
    |GingerCrawler
    |Sosospider
    |www.exabot.com
    |Baiduspider
    |Ask\sJeeves
    |Java\/
    |telehouse\.ru
    |Tagoobot
    |Baypup
    |SimilarPages
    |Spinn3r
    |VoilaBot
    |Yandex
    |Xenu\sLink\sSleuth
    |www\.searchme\.com
    |MJ12bot
    |kilomonkey\.com
    |Mediapartners-Google
    |Sogou\sweb\sspider
    |YoudaoBot
    |seexie\.com
    |Yahoo.*Slurp
    |YahooCacheSystem
    |crawler\@nutch\.biz
    |psbot
    |ia_archiver-web\.archive\.org
    |sbider
    |xrss\.eu
    |scoutjet
        |www\.puritysearch\.net
        |Bing
        |BaiduImagespider
        |baidu\.jp
        |facebookexternalhit
        |ssllabs\.com
        |Python-urllib
        |drupal\.org
        |HTTrack
        |Willow\s+Internet\s+Crawler\s+by\s+Twotrees
    /x) {
    return 1;
    }
    return;
}

Awstats의 소스 코드를 보면 위의 것보다 더 나은 것을 찾을 수 있습니다.

0
delete