gpt4 book ai didi

java - 如何从网页中提取绝对URL?

转载 作者:太空宇宙 更新时间:2023-11-04 07:25:00 25 4
gpt4 key购买 nike

我正在尝试获取 HTML 网页中的所有 URL。我写了这个函数

public static List<String> getURLs(String url){
List<String> urls = new ArrayList<String>();
try{
Document doc2 = Jsoup.connect("http://"+url)
.userAgent("Mozilla/5.0 (Windows; U; WindowsNT 5.1; en-US; rv1.8.1.6) Gecko/20070725 Firefox/2.0.0.6")
.timeout(20000)
.get();

String bodyHTML= doc2.select("body").get(0).html();
Pattern pattern =
Pattern.compile("(<a [^>]*href=['\"]?|<img[^> ]* src=['\"]?)");

Matcher matchs = pattern.matcher(bodyHTML);
while( matchs.find()){
System.out.println("Match Found "+bodyHTML.substring( matchs.start(), matchs.end()));
urls.add(bodyHTML.substring( matchs.start(), matchs.end()));
}
return urls;



}
catch (Exception e)
{
e.printStackTrace();
}finally
{
return urls;
}


}

我想访问这些 URL 引用的页面。但提取的某些 URL 可能是相对的。有没有简单的方法来判断 URL 是否是绝对的?如果没有,考虑到我有一个基本 URL,我该如何创建一个。

最佳答案

你可以试试这个:-

String bodyHTML = doc2.select("body").absUrl("href");

检查this出来。

Thread 获取帮助

关于java - 如何从网页中提取绝对URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18675207/

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