예제 #1
0
파일: Program.cs 프로젝트: hartlaubs/IsBot
        static async Task Main(string[] args)
        {
            var file = await File.ReadAllTextAsync("crawler-user-agents.json");

            var crawlers = JsonSerializer.Deserialize <List <Agent> >(file);

            //var isBot = IsBot.Find("Chrome-Lighthouse");
            //IsBot.Exclude("Chrome-Lighthouse");
            //isBot = IsBot.Find("Chrome-Lighthouse");

            // IsBot.Exclude("http", "bot", "google");
            IsBot.Extend("chrome");
            foreach (var crawler in crawlers)
            {
                var counter = 0;
                Console.WriteLine($"{crawler.Pattern} has {crawler.Instances.Count} instances");
                foreach (var instance in crawler.Instances)
                {
                    if (IsBot.Matches(instance))
                    {
                        counter++;
                    }
                }
                Console.WriteLine($"{crawler.Pattern} found {counter} matches");
                Console.WriteLine();
                Console.WriteLine();
            }
        }
예제 #2
0
파일: UnitTest.cs 프로젝트: hartlaubs/IsBot
        public void IncludeBrowserAsBot()
        {
            IsBot.Extend("chrome");
            var isBot = IsBot.Matches(browserUserAgent);

            Assert.True(isBot);
        }
예제 #3
0
파일: UnitTest.cs 프로젝트: hartlaubs/IsBot
        public void ExcludesBrowserFromDetection()
        {
            IsBot.Reset();
            var isBot = IsBot.Matches(browserUserAgent);

            Assert.False(isBot);
        }
예제 #4
0
파일: UnitTest.cs 프로젝트: hartlaubs/IsBot
        public void ExcludeBotFromDetection()
        {
            IsBot.Exclude("google", "bot", "http");
            var isBot = IsBot.Matches(crawlerUserAgent);

            Assert.False(isBot);
        }
예제 #5
0
파일: UnitTest.cs 프로젝트: hartlaubs/IsBot
        public void IdentifyABotCorrectly()
        {
            var isBot = IsBot.Matches(crawlerUserAgent);

            Assert.True(isBot);
        }