2015-02-24 95 views
0
<div class='ym-gbox adds-header'> 
    <a href='javascript:(void);' > 
     <a href="http://epaper.thedailystar.net/" target="_blank"> 
     <img src="http://epaper.thedailystar.net/images/edailystar.png" alt="edailystar" style="float: left; width: 100px; margin-top: 15px;"> 
     </a> 
     <a href="http://www.banglalink.com.bd/celebrating10years" target="_blank" style="display:block;float: right;"> 
     <img width="490" height="60" src="http://bd.thedailystar.net/upload/ads/2015/02/12/BD-News_490x60.gif" alt="banglalink" > 
     </a> 
    </a> 
</div> 

这是html部分。从这里我想提取图像标签的图像源与源地址src =“http://epaper.thedailystar.net/images/edailystar.png”在android中使用jsoup。但我失败了。如果有人给出答案,我会感谢他。从嵌套div中提取图像源和JSOUP中的标记

这里是我的代码

Document document = Jsoup.connect(url).get(); 
Elements img = document.select("div[class=ym-gbox adds-header]").first().select("a[href=http://epaper.thedailystar.net/] > img[src]"); 
String imgSrc = img.attr("src"); 
+0

什么是网址?所以我可以试试.. – 2015-02-24 19:08:45

回答

1

因为你没有提到url,我认为urlhttp://epaper.thedailystar.net/index.php

Document doc = Jsoup.connect("http://epaper.thedailystar.net/index.php").timeout(10*1000).get(); 
Elements div = doc.select("div.logo"); 
Elements get = div.select("img"); 
System.out.println(get.attr("abs:src")); 

输出:

http://epaper.thedailystar.net/images/edailystar.png 
1

你必须通过元素迭代选择适合您需求的元素。像这样:

Elements elements = document.getElementsByTag("img"); 

for (Element element : elements) { 
    if (element.attr("src").endsWith("png")) { 
     System.out.println(element.attr("src")); 
    } 
} 
+0

感谢您回复Yuva Raj和Xryaznov。 – user3256010 2015-02-26 16:20:03

+0

对于Yuva Raj,您的代码适用于**网址:http://epaper.thedailystar.net/index.php **。但是,当我使用**网址:http://www.thedailystar.net/ **它不起作用意味着它无法获取图像。你能告诉我为什么会发生这种情况吗?我尝试了所有的方法,但是如果'url'变化,'div'也会变化,所以 – user3256010 2015-02-26 16:21:10

+0

@ user3256010失败。 – 2015-03-05 17:15:26