1

我正在编写一些代码来查找单个网页的绝对 URL:

http://explore.bfi.org.uk/4ce2b69ea7ef3

到目前为止,我得到了该页面的所有链接并打印了绝对网址

以下是部分代码:

 Elements hyperLinks = htmlDoc.select("a[href]");

    for(Element link: hyperLinks)
    {
        System.out.println(link.attr("abs:href"));
    }

就像上面的一样,这会打印出很多或 url。但是,它似乎也跳过了一些 URL。它跳过的那些是我真正需要的。

这是 a[href] 元素之一,它不会变成绝对 URL:

<div class="title"><a href="/4ce2b69ea7ef3">Royal Review</a><br /></div>

如果我只打印“链接”,它将打印这一行,但是当我输入“abs:href”时,它只会打印空白。

我是 Java 新手,感谢任何反馈!

4

1 回答 1

1

您不应该使用“a[href]”,而是按照以下示例使用“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"));
    }
于 2013-11-04T11:42:48.063 回答