Java开发笔记Ⅱ(Jsoup爬虫)
以下是一个使用Jsoup库进行网页爬取的简单示例代码,用于从一个指定的网页中提取所有的链接。
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import java.io.IOException;
import java.util.HashSet;
import java.util.Set;
public class JsoupCrawlerExample {
public static void main(String[] args) {
String url = "http://example.com"; // 替换为你想爬取的网站
Set<String> links = new HashSet<>();
try {
Document document = Jsoup.connect(url).get();
Elements elements = document.select("a[href]"); // 选择所有的a元素
for (Element element : elements) {
String link = element.attr("href");
if (link.startsWith("/")) {
String rootUrl = url.substring(0, url.length() - 1);
link = rootUrl + link;
}
links.add(link);
}
for (String link : links) {
System.out.println(link);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
这段代码会连接到指定的URL,解析HTML内容,并提取所有的链接。然后,它将打印出这些链接。需要注意的是,这个例子没有处理重复的链接,实际应用中可能需要添加这样的逻辑。此外,实际爬取过程中应遵守网站的robots.txt协议,并尊重版权与隐私政策,不进行侵犯用户隐私的行为。
评论已关闭