1

我已经知道 html 页面中某些元素的路径,我想提取一些数据。有通过插入完整路径来执行此导航的功能吗?

4

1 回答 1

1

是的,除了直接的 DOM 导航方法(getChildren() 等)之外,还有更强大的方法 - Selector。它是一种类似 CSS 过滤与查询字符串匹配的元素的机制。您可以将查询应用于给定节点以及整个文档。

例如:

Document doc;
String query = "body table.mainouter tr:eq(1) img[src$=.png]";
Elements tags = doc.select(query);
if (!tags.isEmpty())
{
  Element tagImg = tags.first();
  String srcImg = tagImg.attr("src");
}

这意味着"Give me the first PNG IMG element in the first TR inside of TABLE of class mainouter"。请注意,查询不是唯一地址,但如果您缩小范围并向查询添加足够的条件,它实际上会成为唯一路径。这样,它将仅返回 1 个元素的集合。好消息是您不需要添加路径的所有元素,只需添加那些消除结果歧义的元素(将结果减少到您搜索的内容)。

于 2013-04-28T13:23:00.153 回答