我正在尝试在HTML网页中获取所有网址。我写过这个函数
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;
}
}
我想访问这些网址引用的网页。 BUt提取的一些URL可能是相对的。有没有一种简单的方法来查找URL是否绝对?如果不是,我怎么能创建一个,考虑到我有一个基本URL。