代码之家  ›  专栏  ›  技术社区  ›  Alessandra

JSoup返回无效的HTML

  •  0
  • Alessandra  · 技术社区  · 6 年前

    我正在使用Maven的JSoup1.11.3。我正在尝试建立绝对关系,我的代码如下所示:

    public String updateHrefs (String htmlContent, String baseUrl, String currentUrl) {
        org.jsoup.nodes.Document doc = Jsoup.parse(htmlContent);
        Elements links = doc.getElementsByTag("a");
        for (org.jsoup.nodes.Element link : links) {
          String absHref = link.attr("href");
          System.out.println("URL before " + absHref);
          if (absHref.equals("")) {
              absHref = baseUrl;
          } else if ((absHref.length()>1) && absHref.substring(0, 2).equals("//")) {
              absHref = absHref;
          } else if (absHref.equals("http")) {
              absHref = absHref;
          } else if (absHref.substring(0, 1).equals("/")) {
              absHref = baseUrl + absHref;
          } else if (absHref.substring(0, 1).equals("#")) {
                  absHref = baseUrl + currentUrl + absHref;
          } else {
              absHref = baseUrl + "/" + absHref;
          }
          System.out.println("URL after " + absHref);
    
          link.attr("href", absHref);
        }
        return doc.outerHtml();
    }
    

    最后,我将结果传递给html到pdf引擎,它返回

     <p> 
    

    标记未关闭。我用原始的html尝试了html-to-pdf引擎,它可以工作:JSoup中是否有问题?谢谢

    0 回复  |  直到 6 年前