Java 如何使用Jsoup解析相对url?

Java 如何使用Jsoup解析相对url?,java,url,jsoup,Java,Url,Jsoup,嗨,我和Jsoup有问题 我刮了一页,得到了很多网址。其中一些是相对的URL,如:“./index.php”,“./admin”,“./details.php” 我使用attr(“abs:href”)来获取绝对url,但这些链接呈现为www.domain.com/./admin.php 我想知道这是否是一个错误 有没有办法用jsoup获得真正的绝对路径?我怎样才能解决这个问题 我也尝试过使用absurl(“href”),但不起作用。如果元素包含一个相对链接,则会得到如下绝对链接:元素。absur

嗨,我和Jsoup有问题

我刮了一页,得到了很多网址。其中一些是相对的URL,如:
“./index.php”
“./admin”
“./details.php”

我使用
attr(“abs:href”)
来获取绝对url,但这些链接呈现为
www.domain.com/./admin.php

我想知道这是否是一个错误

有没有办法用jsoup获得真正的绝对路径?我怎样才能解决这个问题


我也尝试过使用
absurl(“href”)
,但不起作用。

如果
元素
包含一个相对链接,则会得到如下绝对链接:
元素。absurl(“href”)

但是,您必须在之前设置相对链接的基本URI(调用例如
setBaseUri(“http://www.myexample.com在您的
文档
元素
上)

让舒尔成为您的基础Uri足够长

好:

element.setBaseUri("http://www.example.com/abc/");
element.attr("href", "../b/here");
返回:
http://www.example.com/b/here

坏:

element.setBaseUri("http://www.example.com/abc/");
element.attr("href", "../../b/here");
返回:
http://www.example.com/../b/here


-->你的相对链接对于你的基本uri来说太长了

另外一个好的选择是使用abs:href或abs:src属性:

String relHref = link.attr("href"); // == "/"
String absHref = link.attr("abs:href"); // "http://jsoup.org/"
这里也描述了这一点:

我不确定jSoup是什么,或者它与ColdFusion有什么关系。但是,如果您使用的是
cfhttp
,则可以添加
resolveURL=“true”
cfhttp
将返回链接和src的完整绝对URL。这与php和coldfusion有何关系?这个问题通常与所有编程语言相关。Jsoup是一个解析html的java库。您能在这里发布更多关于如何使用Jsoup的代码吗?