Jsoup:如何获取2个标题标签之间的所有html
我正在尝试获取 2 个 h1 标签之间的所有 html。实际任务是根据 h1(标题 1)标签将 html 分成框架(章节)。
感谢任何帮助。
谢谢 苏尼尔
I am trying to get all html between 2 h1 tags. Actual task is to break the html into frames(chapters) based of the h1(heading 1) tags.
Appreciate any help.
Thanks
Sunil
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
如果您想获取并处理两个连续
h1
标记之间的所有元素,您可以处理同级标记。这是一些示例代码:If you want to get and process all elements between two consecutive
h1
tags you can work on siblings. Here's some example code:我不太了解 Jsoup,但直接的方法可能如下所示:
您知道文章的结构吗?它总是相同的吗?您想对这些文章做什么?您是否考虑过在客户端拆分它们?这将是一个简单的 jQuery 工作。
I don't know Jsoup that good, but a straight forward approach could look like this:
Do you know the structure of the articles and is it always the same? What do you want to do with the articles? Have you considered splitting them on the client side? This would be an easy jQuery Job.
迭代连续
元素之间的元素似乎没问题,除了一件事。不属于任何标签的文本,如this
中。为了解决这个问题,我实现了 splitElemText 函数来获取此文本。首先使用此方法拆分整个父元素。然后,除了元素之外,从分割的文本中处理合适的条目。如果您想要原始 html,请删除对
htmlToText
的调用。Iterating over the elements between consecutive
<h>
elements seems to be fine, except one thing. Text not belonging to any tag, like in<h1/>this<h1/>
. To workaround this I implementedsplitElemText
function to get this text. First split whole parent element using this method. Then except the element, process the suitable entry from the splitted text. Remove calls tohtmlToText
if you want raw html.