java - 通过abs解析相对图像URL失败

标签 java image url jsoup relative-path

我正在尝试从 URL 获取图像链接。
有些 URL 是相对的。所以,我用abs来解决。
但它无法解析,abs取消打印相对URL。

我的代码没有abs:

String linktopro = "http://www.washingtonpost.com/politics/promises-promises-a-big-obama-health-insurance-promise-that-never-stood-a-chance/2013/10/31/4a465f78-41fd-11e3-b028-de922d7a3f47_story.html";

Document doc = Jsoup.connect(linktopro).userAgent("Mozilla/5.0 (Windows; U; WindowsNT 5.1; en-US; rv1.8.1.6) Gecko/20070725 Firefox/2.0.0.6").timeout(30000).get();
Elements wp_columns = doc.select("div[class=wp-column ten margin-right main-content]");

for(Element wp_column : wp_columns)
{
    String wp_column_string = wp_column+"";
    Document wp_column_doc = Jsoup.parse(wp_column_string);
    Elements imgs = wp_column_doc.select("img");

    for(Element img : imgs)
    {
        out.println(img.attr("src")+"<br/>");
    }
}

不带abs的输出-

/rf/image_606w/2010-2019/Wires/Online/2013-10-31/AP/Images/Obama Health Care.JPEG-09824.jpg
http://www.washingtonpost.com/rw/sites/twpweb/img/blogs/spacer.gif
http://www.washingtonpost.com/rw/sites/twpweb/img/blogs/spacer.gif
http://www.washingtonpost.com/rw/sites/twpweb/img/blogs/spacer.gif
http://www.washingtonpost.com/rw/sites/twpweb/img/blogs/spacer.gif

我的带有abs的代码-

String linktopro = "http://www.washingtonpost.com/politics/promises-promises-a-big-obama-health-insurance-promise-that-never-stood-a-chance/2013/10/31/4a465f78-41fd-11e3-b028-de922d7a3f47_story.html";

Document doc = Jsoup.connect(linktopro).userAgent("Mozilla/5.0 (Windows; U; WindowsNT 5.1; en-US; rv1.8.1.6) Gecko/20070725 Firefox/2.0.0.6").timeout(30000).get();
Elements wp_columns = doc.select("div[class=wp-column ten margin-right main-content]");

for(Element wp_column : wp_columns)
{
    String wp_column_string = wp_column+"";
    Document wp_column_doc = Jsoup.parse(wp_column_string);
    Elements imgs = wp_column_doc.select("img");
    for(Element img : imgs)
    {
        out.println(img.attr("abs:src")+"<br/>");
    }
}

输出带abs -

http://www.washingtonpost.com/rw/sites/twpweb/img/blogs/spacer.gif
http://www.washingtonpost.com/rw/sites/twpweb/img/blogs/spacer.gif
http://www.washingtonpost.com/rw/sites/twpweb/img/blogs/spacer.gif
http://www.washingtonpost.com/rw/sites/twpweb/img/blogs/spacer.gif

正如您所看到的,第一个有用的图像链接消失了。 我不知道为什么会发生这种情况。

最佳答案

你尝试过吗?

 out.println(img.absUrl("src")+"<br/>");

关于java - 通过abs解析相对图像URL失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19704712/

相关文章:

python - Python 上的 Tkinter 显示某些(单色)图像困惑

url - WIX:如何将应用程序注册到 URL 协议(protocol)?

java - Jmeter的标题栏可以修改吗?

java - 后端 MySQL 数据库服务器

java - 使用Java代码执行放在xml文件中的sql

java - 如何将字符串中出现的每个特殊字符后的小写字符转换为大写字符?

html - 图像消失,宽度为 :100% when trying to make images responsive

javascript - 加载大量图像而不卡顿的最佳方式。

android - 如果 url 具有特殊字符,如何在 android 中使用 url 深度链接应用程序

java - 在Java中获取网络资源的修改日期