我已阅读此处和谷歌相关的所有帖子,没有人帮我解决我的问题, 我试图用网站上的selenium读取li元素,我基本上需要列表中的所有li子项。
我在java中编写的代码:
List<WebElement> elements = driver.findElements(ByTagName.tagName("form"));
element1 = elements.get(0).findElement(ByTagName.tagName("iframe"));
driver.switchTo().frame(element1);
element2 = driver.findElement(By.xpath("//div[@id='Scroller']//ul"));
childs = element2.findElements(ByTagName.tagName("div"));
driver.close();
并且由于某种原因,childs的返回值为空。 有人可以帮我吗? 香港专业教育学院尝试过xpath,css选择器和标记名,没有任何帮助。
答案 0 :(得分:0)
您可以尝试将所有li项目作为循环中的数组读取。
//div[@id="Scroller"]/ul[0]/li
//div[@id="Scroller"]/ul[0]/li[1]
答案 1 :(得分:0)
我设法看到你的HTML图片:
http://i.stack.imgur.com/mvVzW.png
一点提示,只需将HTML复制/粘贴到您的问题中,效果会更好,而且您不需要任何声誉。
无论如何,如果您正在尝试抓取每个div
下的li
,则可以使用CSS选择器执行此操作:
div#Scroller > ul > li > div
如果没有,请告诉我们 div
你的意思。