【问题标题】:How to get the image URL from html code using Java [duplicate]如何使用 Java 从 html 代码中获取图像 URL [重复]
【发布时间】:2017-03-21 20:03:47
【问题描述】:

给出下面的示例 HTML。如何获取图片链接http://lis.deped.gov.ph/uis/assets/rev/2630813/images/deped-logo.gif? Just in case the image link starts in//like//uis/assets/rev/2630813/images/deped-logo.gif`我只需要在它之前添加一个字符串。

如何使用正则表达式?我不想使用 http 库。

 <div class="navbar-header"><button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#deped-uis-nav-collapse"><span class="sr-only">Toggle navigation</span><span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span></button><span class="navbar-brand"><img class="logo" src="https://i.stack.imgur.com/P7HKA.gif" alt="DepEd" style="height: 20px; margin-top: -2px"></span></div>

【问题讨论】:

  • 取决于您是否有包含大量图像的大 html 代码。在这种情况下,请使用 XML 解析器。否则,您应该使用 regex -like src="//(.*?)")
  • 也许正则表达式可以工作?

标签: java


【解决方案1】:

您可以为此使用 JSoup..

参考下面的代码..您需要添加 JSoup 库才能使其工作。

    String html = "<html>your html code goes here</html>";

    Document doc = Jsoup.parse(html);
    Elements image = doc.getElementsByTag("img");

     for (Element el : image) {
       String src = el.absUrl("src");
       System.out.println("src attribute is : "+src);
     }

【讨论】:

    【解决方案2】:

    不需要库,使用正则表达式,因为它是一个简单的操作,你的程序应该尽可能轻量级

    类似:

    src="//(.*?)"
    

    然后,将 Java String replaceAll(String regex, String replacement) 与您重建的字符串一起使用。

    【讨论】:

      猜你喜欢
      • 2011-12-29
      • 1970-01-01
      • 2016-12-16
      • 1970-01-01
      • 2015-02-13
      • 2013-09-29
      • 2014-11-25
      • 2020-06-18
      • 2015-05-23
      相关资源
      最近更新 更多