繁体   English   中英

为什么HTMLunit不能在这个https网页上运行?

[英]Why doesn't HTMLunit work on this https webpage?

我正在尝试更多地了解HTMLunit并进行一些测试。 我正在尝试从此站点获取页面标题和文本等基本信息:

https://....com (删除了完整的网址,重要的是它是https)

我使用的代码就是这个,在其他网站上运行正常:

 final WebClient webClient = new WebClient();
  final HtmlPage page;
  page = (HtmlPage)webClient.getPage("https://medeczane.sgk.gov.tr/eczane/login.jsp");
  System.out.println(page.getTitleText());
  System.out.println(page.asText());

为什么我不能获得这些基本信息? 如果是因为安全措施,具体是什么,我可以绕过它们吗? 谢谢。

编辑:嗯,代码在webclient.getpage()之后停止工作; ,test2没有写。 所以我无法检查页面是否为空。

  final WebClient webClient = new WebClient(BrowserVersion.FIREFOX_2);
  final HtmlPage page;
  System.out.println("test1");
    try {
        page = (HtmlPage)webClient.getPage("https://medeczane.sgk.gov.tr/eczane/login.jsp");
      System.out.println("test2");

我通过添加以下代码解决了这个问题:

webClient.setUseInsecureSSL(true);

这是一种禁用安全SSL的弃用方式。 在当前的HtmlUnit版本中,您必须执行以下操作:

webClient.getOptions().setUseInsecureSSL(true);

我认为这是一个身份验证问题 - 如果我在Firefox中找到该页面,我会得到一个登录框。

尝试

webClient.setAuthentication(realm,username,password);

在调用getPage()之前

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM