【问题标题】:Jsoup.parse returning invalid HTMLJsoup.parse 返回无效的 HTML
【发布时间】:2016-03-23 03:19:25
【问题描述】:

我正在使用 Jsoup 解析任意 HTML,到目前为止它运行良好,但我遇到了问题。当给定以下 HTML 时,Jsoup 返回无效的 HTML(多余的位被删除):

<div>
  <a href=''>
    <img src='' alt='The problem is here "I'm not sure what to do"'>
  </a>
</div>

我有一个alt 标签,用单引号括起来,其中包含未转义的单引号和双引号,不幸的是我无法控制输入。当我通过Jsoup.parse 运行它时,我得到了这个:

<div>
  <a href="">
    <img src="" alt="The problem is here &quot;I" m not sure what to do"'>
  </a>
</div>

img 标签末尾的那两个未闭合的引文把我搞砸了。我希望 Jsoup 能给我一些类似的东西:

<div>
  <a href="">
    <img src="" alt="The problem is here &quot;I'm not sure what to do&quot;">
  </a>
</div>

有没有办法让这成为可能?

【问题讨论】:

    标签: html jsoup


    【解决方案1】:

    jsoup的首页广告:

    jsoup 实现了 WHATWG HTML5 规范,并将 HTML 解析为与现代浏览器相同的 DOM。

    ……这就是它正在做的事情。

    所以,不,你不能让它按照你想要的方式解析代码。

    在将内容传递给 jsoup 之前,您需要修复错误。

    【讨论】:

    • 在将内容传递给 Jsoup 之前如何修复内容有什么建议吗?
    【解决方案2】:

    你可以试试这个:

    <div>
      <a href="">
        <img src="" alt="The problem is here &#34;I&#39;m not sure what to do&#34;">
      </a>
    </div>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-05-31
      • 2019-07-08
      • 2011-07-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多