Java 其中一个元素的Jsoup选择器

Java 其中一个元素的Jsoup选择器,java,css,xpath,jsoup,Java,Css,Xpath,Jsoup,最近,我开始学习使用java的jsuop,在这里我需要解析html页面以获取元素的属性。我已经采取了一个相同的页面如下。当我通过Selenium IDE进行监视时,我得到了一个属性 xpath=(//img[@alt='Moto G: Mobile'])[2] 因为jsoup不支持xpath。如何将其转换为jsoup的CSS选择器 我试过了 doc = Jsoup.connect("http://www.flipkart.com/").get(); Elements t3 = doc.sel

最近,我开始学习使用java的jsuop,在这里我需要解析html页面以获取元素的属性。我已经采取了一个相同的页面如下。当我通过Selenium IDE进行监视时,我得到了一个属性

 xpath=(//img[@alt='Moto G: Mobile'])[2]
因为jsoup不支持xpath。如何将其转换为jsoup的CSS选择器

我试过了

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处理此类属性

有人能帮我吗


提前感谢

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

谢谢您的回复,那么如何使用jsoup处理此类元素属性。当我浏览其他网站时,如果有两个具有相同属性的元素,这种情况即将出现,有没有其他更好的方法来处理这些元素。因为这是xpath,所以任何其他使用xpath查找元素的方法都是如此。抱歉,我不明白你的问题。或者你不明白我的答案。Jsoup不是浏览器。它不会执行JavaScript。它只获取普通HTML。如果在浏览器中禁用JavaScript或显示源代码,Jsoup可以处理与您可以看到的内容相同的内容。