使用jsoup解析XML——防止jsoup“清理”XML <链接>标签
在大多数情况下,我使用 jsoup 解析 XML 没有问题。但是,如果 XML 文档中有 标签,jsoup 会将
some text here
更改为 。这使得无法使用 CSS 选择器提取
标记内的文本。
那么如何防止jsoup“清理”标签呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
不要在
元素中存储任何文本 - 这是无效的。如果您需要额外信息,请将其保存在 HTML5
data-*
属性中。我确信 jsoup 不会碰它。Do not store any text inside
<link>
element - it's invalid. If you need extra information, keep it inside HTML5data-*
attributes. I'm sure jsoup won't touch it.对此可以有一个解决方法。在将 XML 传递给 jsoup 之前。转换 XML 文件以用一些虚拟标签替换所有内容并执行您想做的操作。
There can be a workaround for this. Before passing XML to jsoup. Transform XML file to replace all with some dummy tag say and do what you want to do.
在 jsoup 1.6.2 中,我添加了 XML 解析器模式,它将输入解析为-是,不应用 HTML5 解析规则(元素内容、文档结构等)。此模式会将文本保留在
标记中,并允许多个文本等。
下面是一个示例:
返回:
In jsoup 1.6.2 I have added an XML parser mode, which parses the input as-is, without applying the HTML5 parse rules (contents of element, document structure, etc). This mode will keep text in a
<link>
tag, and allow multiples of it, etc.Here's an example:
Returns: