AbotX爬虫框架是一个非常好用的框架,他是Abot框架的拓展 |
下载完成之后
CrawlerX crawler = new CrawlerX(new CrawlConfigurationX()
{
IsJavascriptRenderingEnabled = true,
JavascriptRenderingWaitTimeInMilliseconds = 10000, //等待js处理
MaxConcurrentSiteCrawls = 1, //一次只抓取一个站点
MaxConcurrentThreads = 20, //逻辑处理器计数以避免cpu大败
});
这个配置还有更多属性
//连接超时
config.CrawlTimeoutSeconds = 0;
//下载类容格式
config.DownloadableContentTypes = "text/html, text/plain";
//是否爬扩展页面
config.IsExternalPageCrawlingEnabled = false;
//是否爬扩展连接
config.IsExternalPageLinksCrawlingEnabled = false;
//是否爬的检索到rebots.txt文件,可以要个
config.IsRespectRobotsDotTextEnabled = true;
//是否多重复爬Uri,一般为false,但我估计太大,内存受不了,应为内存会存是否爬过的数据
config.IsUriRecrawlingEnabled = false;
//请求的最大线程,看IIS的支持,太大服务器受不了
config.MaxConcurrentThreads = System.Environment.ProcessorCount;
//最大爬的页码连接,如果为0就没有限制,看需求大小
config.MaxPagesToCrawl = 1000;
//单页面最大的爬页面量,如果为0就没有限制,基本都为0
config.MaxPagesToCrawlPerDomain = 0;
//每爬一个页面等好多毫秒,太快CUP会受不了
config.MinCrawlDelayPerDomainMilliSeconds = 1000;
crawler.CrawlAsync(new Uri("URL地址"));这是异步爬取
crawler.Crawl(new Uri("URL地址"));这是同步爬取