1

我想从 html 中提取链接,使用 jsoup

预期输出:绝对链接。

我为此使用“abs:href”。

这有效:

Jsoup.parse("<a \n\r\t  href=\"http://www.ibm.com/123/?id=abc\">\nhaha</a>", "http://www.ibm.com");

交付:http ://www.ibm.com/123/?id=abc

这不起作用:

Jsoup.parse("<a \n\r\t  href=\"www.ibm.com/123/?id=abc\">\nhaha</a>", "http://www.ibm.com");

交付:http ://www.ibm.com/www.ibm.com/123/?id=abc

我知道很难知道“www.ibm.com”是绝对链接还是相对链接。它可能是顶级域,但也可能是文件夹名称。任何经过验证的解决方案?我想到了这个黑客:

String domain = url.replace("http://", "");
url.replace(domain + domain, domain);
4

1 回答 1

0

您的第二个示例无疑是相对 URL。根据定义,绝对 URL 以协议开头(例如 http 或 https)。所有浏览器都会为您的示例提供相同的输出。

您能否提供一个您正在使用的示例 URL?为什么它有这些伪绝对 URL?

于 2012-12-17T05:52:59.747 回答