我解决了 首先,我们可以通过以下代码使用PhantomJS而不显示其控制台:
IWebDriver driver; var driverService = PhantomJSDriverService.CreateDefaultService();driverService.HideCommandpromptWindow = true;driver = new PhantomJSDriver(driverService);
其次是我提到的错误。Google为浏览器返回了不同的HTML页面,因此PhantomJS浏览器中的Id或Xpath与打开Firefox时导出的ID或Xpath不同。当我使用
string html=driver.PageSource;
要知道正确的XPath或Id,findElement函数运行良好。
例如:对于Google网站结果,FirefoxDriver中第一个链接的XPath是
"//*[@id='rso']/div/div/div[1]/div/div/h3/a"
PhantomJSDriver中第一个链接的XPath是
"//*[@id='ires']//ol/div[1]/h3/a"



