Jsoup: “仅选择 text() 等于的链接”
使用等于某些预定义字符串的 text() 进行 cul 链接的一种方法很简单:
Elements links = document.getElementsByTag("a");
for (Element link : links) {
if (link.text().equals("So & so") || link.text().equals("such & such") {
// add link.attr("href") to our container;
}
}
但随着 text() 条件数量的增加,这种方法看起来效率越来越低。
在 Jsoup 中是否有更好的方法来实现这一点?
One way to cul links with text() that equals some predefined strings is straightforward:
Elements links = document.getElementsByTag("a");
for (Element link : links) {
if (link.text().equals("So & so") || link.text().equals("such & such") {
// add link.attr("href") to our container;
}
}
But as the number of text() conditions grows, this approach looks less and less efficient.
Is there a better way to accomplish this in Jsoup?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这与 Jsoup 没有任何具体关系,但为什么不使用像 HashSet 这样的 Set 来保存有效的字符串呢?然后,如果该集合被称为“validTextSet”,您可以非常简单有效地测试文本是否在集合中
This has nothing specific to do with Jsoup, but why not use a Set such as a HashSet to hold your valid Strings? Then if the set were called "validTextSet", you could quite simply and efficiently test if the text is in the set with