使用selenium webdriver从自动提示框中选择值

我试图使用selenium webdriver自动化维基百科 - 搜索文本字段 .

我想在其中发送文本“kin”并从自动填充列表中选择值“kinu” .

输入框的HTML:输入类型=“搜索”dir =“自动”accesskey =“F”autofocus =“autofocus”size =“20”name =“search”id =“searchInput”results =“10”autocomplete =“off “list =”建议“

有没有办法通过使用按键事件遍历列表并从列表中选择值“kinu”?

enter image description here

从firebug,我可以看到该字段"kinu"的HTML是<"option value=" Kinu“> .
enter image description here

所以我尝试使用xpath WebElement el1 = driver.findElement(By.xpath(“// option [@ value ='kinu']”))找到值;但我无法找到它 . 有没有其他方法可以得到这个?

回答(2)

3 years ago

MAY 需要驱动程序首先单击元素(自动完成框)然后使用以下内容:

driver.findElement(By.xpath("//input[contains(@id, 'searchInput')]")).sendKeys("Kinu" + Keys.ENTER);

3 years ago

我认为最快的方式:

driver.findElement(By.id("searchInput")).sendKeys("Kinu");

可以在那里找到好的代码示例:Need to find element in selenium by css