【问题标题】:HtmlUnitDriver not getting page properlyHtmlUnitDriver 没有正确获取页面
【发布时间】:2012-06-30 04:32:18
【问题描述】:

我是这方面的新手,基本上我正在尝试使用 HtmlUnitDriver, 这是我的代码:

WebDriver driver = new HtmlUnitDriver();
driver.get("http://www.google.com");
System.out.println(driver.getPageSource());

但是我得到的页面来源是:

<?xml version="1.0" encoding="UTF-8"?>
<html>
  <head/>
  <body/>
</html>

我尝试了 new HtmlUnitDriver(true) 但它仍然没有加载谷歌 我已经将 selenium 服务器独立添加到类路径中。 我做错什么了吗? 谢谢

P.S:我使用 selenium-server-standalone-2.24.1.jar 和 jre 1.7

【问题讨论】:

  • 无法复制。我刚刚用 Selenium 2.24.1 测试了这个确切的代码并得到了整个页面。
  • 我正在使用 selenium-server-standalone-2.24.1.jar 和 jre 1.7。那我是不是把项目设置错了?
  • 我有 selenium-java,它是 selenium-server-standalone 的一个子集......我真的不知道可能出了什么问题。你在代理后面吗?它可以在任何其他 WebDriver 中使用吗?
  • 是的,IE 驱动程序和 Firefox 驱动程序等其他所有东西都可以正常工作,我不确定代理是否合适
  • 我刚刚试过了,还是有同样的问题。我还删除了 JRE 库并重新添加了它。而且我没有使用 Mavan 或 Ivy 或任何东西。我只从 Eclipse 中创建了一个普通项目

标签: selenium webdriver htmlunit htmlunit-driver


【解决方案1】:

HtmlUnitDriver 默认禁用 javaScript google.com 严重依赖 javascript。 尝试使用driver.setJavascriptEnabled(true)

WebDriver driver = new HtmlUnitDriver();
driver.setJavascriptEnabled(true)
driver.get("http://www.google.com");
System.out.println(driver.getPageSource());

【讨论】:

    【解决方案2】:

    这个问题肯定是由于启动 htmlunitdriver 时缺少代理。您必须提供代理详细信息

    【讨论】:

      猜你喜欢
      • 2013-10-08
      • 1970-01-01
      • 2016-06-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-29
      相关资源
      最近更新 更多