美文网首页
从网页标签内容里获取图片

从网页标签内容里获取图片

作者: ZHG | 来源:发表于2018-04-25 19:13 被阅读27次

    场景描述

    很多时候,我们后台数据库里会保存网页标签内容,方便 APP 端或者网页端显示动态页面,存放的内容例如:<p>message</p><p><img src="123-456-789.jpg" title="图片"/></p> 。让我们从内容中获取图片的路径作为标题图片。

    功能实现

    • 方法一
      使用字符串截取的方式进行截取:
    int startIndex = content.indexOf("img src=");
    int endIndex  = content.indexOF(" title");
    imageUrl = content.substring(startIndex, endIndex);
    

    然而,当 title 的位置不固定的时候,这种方法就不适用了。为了保险起见,使用正则表达式可能会更好。

    • 方法二
      使用正则进行筛选
    private String getImageUrl(String htmlString) {
          String imagePic = "";
          Set<String> pictures = new HashSet<>();
          String img = "";
          Pattern img_p ;
          Matcher img_m;
          String regEx_img = "<img.*src=\".*?>";
          img_p = Pattern.compile(regEx_img,Pattern.CASE_INSENSITIVE);
          img_m = img_p.matcher(htmlString);
          while (img_m.find()){
               img = img_m.group();
                Matcher matcher = Pattern.compile("src=\"?(.*?)(\"|>|\\s+)").matcher(img);
              while (matcher.find()){
                   pictures.(matcher.group(1));
              }
          }
    
          for (String pic : pictures) {
               if (pic!=null) {
                    imagePic = pic;
                    return imagePic;
              }
          }
        return imagePic;
    }
    

    使用这种方式就可以随时随地的获取图片的路径了。其中 pictures 就是获取标签内容中所有的图片路径。

    坚持看书,坚持学习,每天进步一小步,就会进步一大步。

    相关文章

      网友评论

          本文标题:从网页标签内容里获取图片

          本文链接:https://www.haomeiwen.com/subject/hniylftx.html