JAVA - 我需要在JSOUP中更改绝对路径的相对路径

时间:2015-04-21 15:23:51

标签: java path html-parsing jsoup html-parser

我是jsoup Java HTML Parser的新成员。

我有以下代码:

String url =”http://bestSite.com”;
  try{
Document document = Jsoup.connect(url).get();
File input = new File("/somePath/output.html");
PrintWriter writer = new PrintWriter(input, "UTF-8");
Elements element = document.getElementsByClass(“logo”);
  writer.write(element.outerHtml());
  writer.flush();
  writer.close();
}

  

output.html

我收到相对路径:

<img src="/images/fun.png" 

而不是绝对路径:

<img src=”http://bestSite.com/image/fun.png”

如何更改?

  

答案是:

Elements media = document.select("img[src]");
for (Element src : media) {
src.attr("src", src.absUrl("src"));
}

1 个答案:

答案 0 :(得分:2)

在JSoup中,你可以获得绝对而不是相对,但只有在检索属性时才能获得:

String relativeSrc = elment.attr("src");
String absoluteSrc = elment.attr("abs:src");

所以你可以这样做:

for (Element element : elements) {
     String absoluteSrc = elment.attr("abs:src");       
}