在阅读了一些网页抓取教程后尝试使用 Selenium ..
目的是网页/屏幕抓取在 Ajax 调用后加载所需数据的页面(此 ajax 调用在初始页面加载后进行)..
第二个目标是在后台运行 Selenium 代码(不打开任何浏览器)以允许加载页面(包括 Ajax 调用)、检索最终 HTML 并在本地执行所需的处理..
到目前为止的代码如下(来自http://www.geekonweb.com/net/web-page-scraping-using-selenium-and-net/的代码教程)
public ActionResult Index()
{
//--
//Below path should contain IEDriverServer.exe
var chrome = new ChromeDriver(@"file path");
chrome.Url = @"<url>";
chrome.Navigate();
//extract the html
//var retval = ie.ExecuteScript("return document.body.outerHTML");
string result = chrome.PageSource;
return View();
}
目前还没有找到静默运行 Selenium 的方法(没有 GUI)。如果可以的话,请提供帮助。
其次,请告诉 Selenium 如何被告知等待 Ajax 调用完成然后检索数据。
问候,