我正在尝试使用Jsoup从在线购物网站Flipkart中删除产品的图像src。这是我试过的代码。
String url = "http://www.flipkart.com/moto-g-3rd-generation/p/itme9ysjr7mfry3n?pid=MOBE6KK93JG5WKB2&cmpid=content_mobile_8965229628_gmc_pla&tgi=sem%2C1%2CG%2C11214002%2Cg%2Csearch%2C%2C50314733420%2C1o1%2C%2C%2Cc%2C%2C%2C%2C%2C%2C%2C&gclid=COXtgdLyiMoCFUyhaAodIawO8w";
Document doc = Jsoup.connect(url).get();
Elements imageElements = doc.select("img[class=productImage]");
String img = imageElements.attr("src");
System.out.println(img);
以下是该网站的HTML代码。 screenshot of html code
答案 0 :(得分:1)
编辑:这有效。
String url = "http://www.flipkart.com/moto-g-3rd-generation/p/itme9ysjr7mfry3n?pid=MOBE6KK93JG5WKB2&cmpid=content_mobile_8965229628_gmc_pla&tgi=sem%2C1%2CG%2C11214002%2Cg%2Csearch%2C%2C50314733420%2C1o1%2C%2C%2Cc%2C%2C%2C%2C%2C%2C%2C&gclid=COXtgdLyiMoCFUyhaAodIawO8w";
Document doc;
try {
doc = Jsoup.connect(url).get();
Elements imageElements = doc.select("img.productImage");
for(Element e : imageElements){
System.out.println(e.attr("data-src"));
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
的变化:
您使用[class =可以使用.productImage缩短
你没有试一试(相对不重要)
您尝试获取所有元素的attr。你应该使用一个循环。
编辑: 好。我发现了关于图像奇怪的src的问题。看起来Javascript在页面呈现后修改了“src”属性。真正的src是“data-src”值,后来被javascript删除。很奇怪,是吗?