我正在编写一些代码来查找单个网页的绝对 URL:
http://explore.bfi.org.uk/4ce2b69ea7ef3
到目前为止,我获得了该页面的所有链接并打印了绝对 url
部分代码如下:
Elements hyperLinks = htmlDoc.select("a[href]");
for(Element link: hyperLinks)
{
System.out.println(link.attr("abs:href"));
}
这会像上面那样打印出很多或 url。但是,它似乎也跳过了一些 URLS。它跳过的是我真正需要的。
这是 a[href] 元素之一,它没有变成绝对 URL:
<div class="title"><a href="/4ce2b69ea7ef3">Royal Review</a><br /></div>
如果我只打印“链接”,它会打印这一行,但当我输入“abs:href”时,它只会打印空白。
我是 Java 的新手,非常感谢任何反馈!
最佳答案
您不应该使用“a[href]”,而是在this example 之后使用“a” :
Document doc = Jsoup.connect("http://jsoup.org").get();
Element link = doc.select("a").first();
String relHref = link.attr("href"); // == "/"
String absHref = link.attr("abs:href"); // "http://jsoup.org/"
所以在你的情况下:
Elements hyperLinks = htmlDoc.select("a");
for(Element link: hyperLinks)
{
System.out.println(link.attr("abs:href"));
}
关于java - 无法找到绝对网址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19766486/