我想从html页面解析一个特定的图像。
<img id="icImg" class="img img500" itemprop="image" src="https://i.ebayimg.com/images/g/p4cAAOSwXSNann-Z/s-l500.jpg" style="" onload="picTimer=new Date().getTime();" clk="0" alt="Sigaretta-elettronica-liquid-pronto-per-l-039-uso-svapo-100-ml-GUSTI-A-SCELTA" mskuskip="false">
其中“icImg”是我要解析的id。 有没有办法获得id icImg的img?因为.first方法只获取html页面中的第一个图像 我的代码是:
public synchronized void getImg(){
new Thread(new Runnable() {
@Override
public void run() {
try {
while((linkurl.isEmpty())){
Thread.sleep(1000);
}
sem.acquire();
Document doc = Jsoup.connect(linkurl).get();
Element image = doc.select("img").first();
String imgSrc = image.absUrl("src");
InputStream in = new URL(imgSrc).openStream();
bitmap = BitmapFactory.decodeStream(in);
sem.release();
}catch (IOException e){
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
runOnUiThread(new Runnable() {
@Override
public void run() {
immagine.setImageBitmap(bitmap);
}
});
}
}).start();
感谢您的帮助。
答案 0 :(得分:3)
您可以使用#
作为
Element image = doc.select("img#icImg").first();
// fetch all image elements tag with id, fetch the first element
String imgSrc = image.absUrl("src");