private void GetRootPages() { BackCallDelegate backCallDelegate = delegate() { foreach (ListPage page in this.AllFirstPages) { rootPageGridView.Rows.Add(true, 1, txtPageCount.Text.Trim(), page.PageName, page.PageUrl); } getRootPageButton.Text = "读取根级页"; lbeGetRootPages.Visible = false; return(null); }; RootPageConfiguration rootPageConf = SnifferConfig.GetRootPageConfiguration(this.RootPageName); if (rootPageConf == null) { ClearSet(); getRootPageButton.Invoke(backCallDelegate); return; } ListPage rootPage = new ListPage((ListPageConfiguration)rootPageConf); if (rootPageConf.IsSniffer) { rootPage.Sniffer(); if (!rootPage.Done || rootPage.SubPageUrlResults.Count == 0) { //采集不到 } foreach (UrlItem urlItem in rootPage.SubPageUrlResults) { ListPage page = new ListPage(rootPage, (ListPageConfiguration)rootPage.ListPageConfiguration.SubPageConfiguration); page.PageName = urlItem.Title; page.PageUrl = urlItem.Url; this.AllFirstPages.Add(page); } } else { foreach (ListPageConfiguration firstPageConfi in rootPageConf.SubPageConfigurations) { this.AllFirstPages.Add(new ListPage(rootPage, firstPageConfi)); } } getRootPageButton.Invoke(backCallDelegate); }
private void SnifferDone() { FirstPages.Clear(); //AllFirstPages.Clear(); FirstPageCount = 0; FirstPageDoneCount = 0; SnifferThreads.Clear(); Threads.Clear(); BackCallDelegate backCallDelegate = delegate() { dataGridView.Rows.Clear(); messageLabel.Text = "已经停止......"; return(null); }; messageLabel.Invoke(backCallDelegate); }