public Spider(Settings settings, ILogger logger, IEnumerable<UrlInfo> continueLinks = null) { _settings = settings; _cookieContainer = new CookieContainer(); _crawlThreads = new Thread[_settings.Threads]; _idleThreads = new bool[_settings.Threads]; _urlQueue = new Queue<UrlInfo>(); _random = new Random(); _log = logger ?? new EmptyLogger(); // 将待继续爬取的链接加到队列 if (continueLinks != null) { foreach (var link in continueLinks) { _urlQueue.Enqueue(link); } _log.Info("上次未处理链接数:" + continueLinks.Count()); } }
private void FrmSettings_Load(object sender, EventArgs e) { Settings = Properties.Settings.Default.SpiderSettings ?? new Settings(); settingsBindingSource.DataSource = Settings; }