gpt4 book ai didi

java - 删除 JSoup 抓取的重复元素

转载 作者:行者123 更新时间:2023-11-30 06:45:45 27 4
gpt4 key购买 nike

在我的抓取功能中,我检索 DOM 中存在的链接。

Elements links = doc.getElementsByTag("a");

for (Element link : links) {
String linkHref = link.attr("href");
if(linkHref.contains("/blog/")){
System.out.print("Link: " + linkHref + "\n");
}
}

这很有效。

我想知道的是删除 Elements 对象中的重复链接

这可能吗?如果没有,我会很容易找到使用字符串数组的解决方法,但我更喜欢惯用的解决方案。

谢谢

最佳答案

您可以使用 HashSet 来实现它。 HashSet 是一种存储唯一元素集的数据结构,因此如果存在重复链接,您将不会将它们包含在 HashSet 中。

Elements links = doc.getElementsByTag("a");
Set<String> set = new HashSet<String>();
for (Element link : links) {
String linkHref = link.attr("href");
if(linkHref.contains("/blog/")){
set.add(linkHref);
System.out.print("Link: " + linkHref + "\n");
}
}

关于java - 删除 JSoup 抓取的重复元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48413434/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com