我在此页面上使用 htmlUnit http://www.my-personaltrainer.it/Foglietti-illustrativi/Torvast.html 有一个章节索引,每个章节都有自己的文本。我想创建一个方法,它返回传递部分名称的文本。
所有部分的名称都位于名为“lista”的标签内,我通过以下方式获取此信息:
HtmlPage page = webClient.getPage("http://www.my-personaltrainer.it/Foglietti-illustrativi/Torvast.html");
final String pageAsText = page.asText();
final Iterable<DomElement> div = page.getHtmlElementById("lista").getChildElements();
ArrayList<String> menu = new ArrayList<>();
for (DomElement e : div) {
menu.add(e.asText());
}
所有信息都在我迭代的范围内:
Iterable<DomElement> desc = page.getHtmlElementById("foglietto_descrizioni").getChildElements();
每个部分都位于没有 id 或 class 的 h2 标记内。所以我不知道如何提取标签 h2 到另一个标签之间的所有文本。
最佳答案
如果元素层次结构遵循某种模式,您可以像这样访问 H2 标记:
$('#Indicazioni').parent()
如果你想获取H2中的所有文本,你可以使用:
$('#Indicazioni').parent().text()
不确定这是否能回答您的问题。
我没有使用过 HtmlUnit,但据我所知它支持 jQuery。
关于java - HtmlUnit - 获取两个没有 id 的标签之间的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42922205/