Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/394.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Selenium—并非页面中的所有li元素都可用_Java_Html_Selenium_Html Lists - Fatal编程技术网

Java Selenium—并非页面中的所有li元素都可用

Java Selenium—并非页面中的所有li元素都可用,java,html,selenium,html-lists,Java,Html,Selenium,Html Lists,在HTML页面的ul元素下,我有700个li元素。 当我试图得到所有li元素的列表时,我只得到107个元素,而不是所有700个元素。 抱歉没有发布HTML源代码-这是一个需要登录密码的页面。 Java代码如下所示: System.setProperty("webdriver.chrome.driver", "C:\\chromedriver.exe"); WebDriver driver = new ChromeDriver(); List<WebElement&

在HTML页面的ul元素下,我有700个li元素。 当我试图得到所有li元素的列表时,我只得到107个元素,而不是所有700个元素。 抱歉没有发布HTML源代码-这是一个需要登录密码的页面。 Java代码如下所示:

    System.setProperty("webdriver.chrome.driver", "C:\\chromedriver.exe");
    WebDriver driver = new ChromeDriver();

    List<WebElement> childs;

    elements = driver.findElements(ByTagName.tagName("form"));
    element1 = elements.get(0).findElement(ByTagName.tagName("iframe"));
    driver.switchTo().frame(element1);
    //wait for page load
    driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
    childs = (driver.findElement(By.id("Scroller")).findElement(By.tagName("ul"))).findElements(By.tagName("li"));
System.setProperty(“webdriver.chrome.driver”,“C:\\chromedriver.exe”);
WebDriver驱动程序=新的ChromeDriver();
列出儿童;
元素=driver.findElements(ByTagName.tagName(“表单”);
element1=elements.get(0).findElement(ByTagName.tagName(“iframe”));
驱动程序.切换到().框架(元素1);
//等待页面加载
driver.manage().timeouts().implicitlyWait(10,TimeUnit.SECONDS);
childs=(driver.findElement(By.id(“滚动”)).findElement(By.tagName(“ul”)).findElements(By.tagName(“li”));
Childs.size将显示107,与真正的HTML页面不同。
有人能帮忙吗?

如果不看html,就无法判断出问题所在。如果列表由ajax填充,则列表中可能只添加了少数
li
项。当你查看页面源代码时,你能看到所有700个元素吗?这就是问题所在,如果我右键单击页面上的第一项并选择inspect元素,我会在源代码中看到部分li(大约100个),而不是全部li,但是如果我检查列表中较高一行的元素,比如100行,源代码将以更多li打开,这很难解释,我希望它是清楚的。我不知道如何显示HTML,因为它是我工作中的一个内部系统。。