Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
c#使用visual studio的网络绘图初学者对添加链接有疑问_C#_Linq_Selenium_Web Scraping_Web Crawler - Fatal编程技术网

c#使用visual studio的网络绘图初学者对添加链接有疑问

c#使用visual studio的网络绘图初学者对添加链接有疑问,c#,linq,selenium,web-scraping,web-crawler,C#,Linq,Selenium,Web Scraping,Web Crawler,下面是我为刮花所做的工作 我已经附上了我的文件,因为它不会在这个网站上使用ctrl+v 正如你所看到的,这只会刮去新闻的第一页,现在我想做的是如何将新闻从第一页刮到最后(43199),但我不确定从哪里开始我是一个非常初学者,我开始学习c#就像几周前一样,但我对编码非常感兴趣,我想向c#大师学习。对不起,我的英语不好 您在寻呼机中的当前页面是一个跨距,而不是一个链接,因此下面是我要做的。 首先在底部找到寻呼机: public bool GoToNextPage() { IWebElement p

下面是我为刮花所做的工作

我已经附上了我的文件,因为它不会在这个网站上使用ctrl+v

正如你所看到的,这只会刮去新闻的第一页,现在我想做的是如何将新闻从第一页刮到最后(43199),但我不确定从哪里开始我是一个非常初学者,我开始学习c#就像几周前一样,但我对编码非常感兴趣,我想向c#大师学习。对不起,我的英语不好


您在寻呼机中的当前页面是一个跨距,而不是一个链接,因此下面是我要做的。 首先在底部找到寻呼机:

public bool GoToNextPage()
{

IWebElement pager = driver.FindElement(By.Xpath("descendant::div[@class='paging']"));

//Then find the current page:
List<IWebElement> nextPage = pager.FindElements(By.Xpath("descendant::span\following-sibling::a")).ToList();
if(nextPage.Count > 0)
{
nextPage.First().Click();
return true;
}
else{
//you're at the end of the pages
return false;
}
}

如果有人投了反对票,你能至少解释一下原因吗?问题是,当你点击下一页时,它不会变为1->2->3->4,而是变为1->11->21->31,这就是为什么你要用span来找到你的位置。如果您在第1页,那么跨度是第1页,因此下一页是以下链接(第2页链接)。如果你在第10页,跨度是第10页,所以下面的链接是箭头。单击箭头将进入第11页,现在跨度为11,因此下一个链接为12。
bool hasNextPage = true;
while(hasNextPage)
{
//your existing scrape functionality here
hasNextPage = GoToNextPage();
}