Example #1
0
        public void Constructor_ValidArg_SetsPublicProperty()
        {
            CrawledPage  page    = new CrawledPage(new Uri("http://aaa.com/"));
            CrawlContext context = new CrawlContext();
            CrawlArgs    args    = new CrawlArgs(context);

            Assert.AreSame(context, args.CrawlContext);
        }
        void SaveWebsiteUriRequestResult(object o, CrawlArgs e)
        {
            PageCrawlDisallowedArgs disallowedArgs;
            double requestTime;
            string absoluteUri;

            if ((disallowedArgs = e as PageCrawlDisallowedArgs) != null)
            {
                requestTime = 0;
                absoluteUri = disallowedArgs.PageToCrawl.Uri.AbsoluteUri;
            }
            else
            {
                PageCrawlCompletedArgs       crawlCompletedArgs;
                PageLinksCrawlDisallowedArgs linksDisallowedArgs = e as PageLinksCrawlDisallowedArgs;
                if (linksDisallowedArgs != null)
                {
                    absoluteUri = linksDisallowedArgs.CrawledPage.Uri.AbsoluteUri;
                    requestTime = linksDisallowedArgs.CrawledPage.Elapsed;
                }
                else
                {
                    crawlCompletedArgs = e as PageCrawlCompletedArgs;
                    requestTime        = crawlCompletedArgs.CrawledPage.Elapsed;
                    absoluteUri        = crawlCompletedArgs.CrawledPage.Uri.AbsoluteUri;
                }
            }
            _sitePages.Add(new WebPage
            {
                WebsiteId   = _website.Id,
                RequestUri  = absoluteUri,
                RequestTime = requestTime,
                Timestamp   = DateTime.Now
            }
                           );
        }