使用JSoup提取图像src

时间:2012-05-04 23:35:35

标签: jsoup

我正在尝试使用jsoup从此网页中提取所有图片网址?任何人都可以提供如何做的帮助吗?所有标签的格式都是这样的,但我只需要src图像,而不是ajaxsrc:

<IMG ajaxsrc="/pics32/160/MP/MPYXBXTSYVKAKJQ.20110918032436.jpg" src="http://image.cdnllnwnl.xosnetwork.com/pics32/160/MP/MPYXBXTSYVKAKJQ.20110918032436.jpg">

这是链接: http://www.ncataggies.com/PhotoAlbum.dbml?DB_OEM_ID=24500&PALBID=417884

这是格式吗?

        Document doc = null;
    try {
        doc = Jsoup.connect(articleLink).timeout(10000).get(); 
    } catch (IOException ioe) {
        return null;
    }
    Element content = doc.getElementById("div.thumb-image preview");
    Elements links = content.getElementsByAttribute("IMG");
    for (Element link : links) {
      String source = link.attr("src");
      Elements imageLinks = link.getElementsByAttribute(source);
      for(Element imageLink: imageLinks){
          //imageLink = picture link?
      }

}

似乎不是这样。我的代码中有打印语句,但它们没有受到影响。

3 个答案:

答案 0 :(得分:13)

您应该可以执行以下操作来获取所有img标记:

for (Element e : doc.select("img")) {
    System.out.println(e.attr("src"));
}

这应该选择所有img标签,然后抓住src属性并打印到控制台。

答案 1 :(得分:0)

假设您已根据此IMG拥有Element,请尝试以下操作:

String source = img.attr(“src”);

此attr方法继承自Node类

HTH

答案 2 :(得分:0)

Document document = Jsoup.connect(" http://www.ncataggies.com/PhotoAlbum.dbml?DB_OEM_ID=24500&PALBID=417884").get();

        Elements elements =document.getElementsByTag("IMG");
        for(int i=0;i<elements.size();i++)
        {
            System.out.println("Sources of "+ i +":"+elements.get(i).attr("src"));
        }