硒 - 不能接受ul下的li元素

时间:2013-10-29 17:15:48

标签: java selenium webdriver html-lists

我已阅读此处和谷歌相关的所有帖子,没有人帮我解决我的问题, 我试图用网站上的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选择器和标记名,没有任何帮助。

2 个答案:

答案 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你的意思。