2014-04-16 67 views
1

最近我已经开始学习用java jsuop,我需要解析HTML页面元素的属性。我采取了与下面相同的页面。在存在图像时,我是间谍通过硒IDE我有一个属性作为Jsoup选择的元素之一

xpath=(//img[@alt='Moto G: Mobile'])[2] 

为jsoup不支持的XPath。如何将其转换为jsoup的CSS Selctor。

我曾尝试

doc = Jsoup.connect("http://www.flipkart.com/").get(); 
Elements t3 = doc.select("img[alt='Moto G: Mobile']:nth-of-type(2)"); 
System.out.println(t3.size()); 
System.out.println(t3.get(0)); 

但得到

0 
Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 0, Size: 0 

有没有更好的方式来处理这些类型的使用jsoup属性。

任何机构可以帮助我。

在此先感谢

回答

1

问题不在于您的查询。您搜索的图片是由JavaScript动态添加的,而不是您获取的HTML的一部分。

+0

thnk您的回复这么如何处理这种类型的使用jsoup.when我通过其他网站去当有与这种情况即将同一性质的两种元素元素属性的,有没有其他更好的方式来处理这些元素。 .as这是xpath使用xpath查找元素的其他方法。再次thamks –

+0

对不起,我不明白你的问题。或者你不明白我的答案。 Jsoup不是浏览器。它不会执行JavaScript。它只是提取纯HTML。如果您在浏览器中禁用JavaScript或显示源代码,Jsoup可以使用与您可以看到的内容相同的内容。 – lefloh