Selenium + PhantomJS - 页面源中缺少元素
Selenium + PhantomJS - missing elements in Page Source
我有一个 Selenium 项目 + Java + Maven 运行 通常在 Chrome driver 上。
然而,我一直试图让它与 PhantomJS 一起工作,但我遇到了一个问题。
适用于 Chrome driver 的相同代码不适用于 PhantomJS。我调试了很多并意识到问题是加载的页面源与 PhantomJS 不同。我尝试查找的 ID 不存在。
当使用 System.out.println(driver.getPageSource());
时,输出为:
Chrome driver: 长度: 19,233
PhantomJS driver:长度:14,965
我试过按照另一个 post (driver.manage().window().setSize(new Dimension(2000, 1500));
) 中的建议设置大小,但这也无济于事。
我试过等待更长的时间来加载页面,但没有帮助。
我还检查了 driver.get() 中的 link,它是一个完整的 URL,在 http://开始.
由于我们需要在 Chrome 和 PhantomJS 上进行 运行 的所有测试,所以我宁愿我们不需要在每次编写时都检查 PageSource测试并寻找两者都存在的东西。
如有任何帮助,我将不胜感激。 :)
PhantomJs 这几天由于维护不善而出现错误。
您可以将 chromedriver 本身用于无头作业。
你只需要在chromedriver中传递一个选项如下:-
chromeOptions.addArguments("--headless");
完整代码将如下所示:-
System.setProperty("webdriver.chrome.driver","D:\Workspace\JmeterWebdriverProject\src\lib\chromedriver.exe");
ChromeOptions chromeOptions = new ChromeOptions();
chromeOptions.addArguments("--headless");
chromeOptions.addArguments("--start-maximized");
WebDriver driver = new ChromeDriver(chromeOptions);
driver.get("https://www.google.co.in/");
希望对您有所帮助:)
我有一个 Selenium 项目 + Java + Maven 运行 通常在 Chrome driver 上。 然而,我一直试图让它与 PhantomJS 一起工作,但我遇到了一个问题。 适用于 Chrome driver 的相同代码不适用于 PhantomJS。我调试了很多并意识到问题是加载的页面源与 PhantomJS 不同。我尝试查找的 ID 不存在。
当使用 System.out.println(driver.getPageSource());
时,输出为:
Chrome driver: 长度: 19,233
PhantomJS driver:长度:14,965
我试过按照另一个 post (driver.manage().window().setSize(new Dimension(2000, 1500));
) 中的建议设置大小,但这也无济于事。
我试过等待更长的时间来加载页面,但没有帮助。
我还检查了 driver.get() 中的 link,它是一个完整的 URL,在 http://开始.
由于我们需要在 Chrome 和 PhantomJS 上进行 运行 的所有测试,所以我宁愿我们不需要在每次编写时都检查 PageSource测试并寻找两者都存在的东西。
如有任何帮助,我将不胜感激。 :)
PhantomJs 这几天由于维护不善而出现错误。
您可以将 chromedriver 本身用于无头作业。
你只需要在chromedriver中传递一个选项如下:-
chromeOptions.addArguments("--headless");
完整代码将如下所示:-
System.setProperty("webdriver.chrome.driver","D:\Workspace\JmeterWebdriverProject\src\lib\chromedriver.exe");
ChromeOptions chromeOptions = new ChromeOptions();
chromeOptions.addArguments("--headless");
chromeOptions.addArguments("--start-maximized");
WebDriver driver = new ChromeDriver(chromeOptions);
driver.get("https://www.google.co.in/");
希望对您有所帮助:)