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

标签 java path html-parsing jsoup html-parser

我是 jsoup Java HTML 解析器的新手。

我有以下代码:

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”

如何更改它?

The answer is:

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

最佳答案

在 JSoup 中,您可以获得绝对值而不是相对值,但仅限于检索属性时:

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

所以你可以这样做:

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

关于JAVA - 我需要将 JSOUP 中的相对路径更改为绝对路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29776541/

相关文章:

c - C中二进制文件的路径

java - eclipse EE juno : java.net.bind 异常

java - jsoup 中的什么方法可以返回修改后的 html?

java - 有没有办法将compareTo与double一起使用? java

java - 使用 Hibernate 连接子类,是否可以复制 super 表和子表中的列*并*保持它们同步?

java - 在java中创建数字证书

Java:检查路径是否是文件的父级

python - BeautifulSoup:获取另一个标签后面的标签文本

iphone - 如何解决iPhone应用程序hpple HTML解析 'libxml/tree.h'文件未找到的问题?

java - 所有键中的 HashMap 值都会更新