Jsoup是否使用html文档的基标记自动解析相对路径

Jsoup是否使用html文档的基标记自动解析相对路径,jsoup,Jsoup,据我所知,只要在实例化解析器时指定了基URI,jsoup解析器就允许使用相对链接 现在让我们假设文档定义了一个基本标记,其URI与页面的URI不同。这个URI不能被预先知道 解析器的行为是什么? 它是否自动检测标签并将其应用于整个文档? 或者我们必须第一次解析文档以检测基本标记,然后使用检测到的值作为基本uri重新解析它吗 提前谢谢 KojJsoup将检测标记并将其应用于整个文档。解析相对链接时,基本标记URI优先于提供给解析器的URI。您不需要对文档进行两次解析。例如: Jsoup将检测标记

据我所知,只要在实例化解析器时指定了基URI,jsoup解析器就允许使用相对链接

现在让我们假设文档定义了一个基本标记,其URI与页面的URI不同。这个URI不能被预先知道

解析器的行为是什么? 它是否自动检测标签并将其应用于整个文档? 或者我们必须第一次解析文档以检测基本标记,然后使用检测到的值作为基本uri重新解析它吗

提前谢谢
Koj

Jsoup将检测
标记并将其应用于整个文档。解析相对链接时,基本标记URI优先于提供给解析器的URI。您不需要对文档进行两次解析。例如:


Jsoup将检测
标记并将其应用于整个文档。解析相对链接时,基本标记URI优先于提供给解析器的URI。您不需要对文档进行两次解析。例如:


如果为解析器设置的指定基URI与基标记的值不同,那么情况会怎样?基本标记值是否优先于另一个?是的,根据“解析相对URI”规范,基本标记URI优先于提供给解析器的基本URI。如果为解析器设置的指定基本URI与基本标记的值不同,该怎么办?基本标记值是否优先于另一个?是的,根据“解析相对URI”规范,基本标记URI优先于提供给解析器的基本URI。
Document doc = Jsoup.parse(
    "<a href='/one/'>One</a>" +
    "<base href='http://example.com/' />" +
    "<a href='/two/'>Two</a>");
Elements els = doc.select("a");
for (Element e: els) {
    System.out.println(e.attr("abs:href"));
}
http://example.com/one/
http://example.com/two/