已经尝试了一段时间来弄清楚如何使用selenium python处理弹出窗体。
有元素"添加"单击它后打开一个新的弹出窗口,我必须输入值。无法找到要插入值的元素。 没有使用iframe。
弹出窗口的HTML代码如下:
<div id="form-1322" class="xyz" >
<div id="form-1322-body" class="xyz1" >
<span id="outerCt" role="presentation"">
<div id="innerCt"role="presentation"">
<table id="ext-comp-1317" class="xyz2" >
<tbody>
<td id="body1" class="xyz4">
<input id="body2" class="xyz5" name="abc">
需要在 - &gt;中插入值名称=&#34; ABC&#34;但无法找到元素。
使用的代码:
Name=driver.find_element_by_xpath('//input[@id="body2"][@class="xyz5"][@name="abc"]')
Name.send_keys("login")
答案 0 :(得分:0)
您的问题可能是“硒太快”,并且在页面上显示该元素之前正在查找该元素。尝试使用WebDriverWait
from selenium.webdriver.support.ui import WebDriverWait
element = WebDriverWait(driver, 10).until(
lambda driver : driver.find_element_by_xpath('//input[@id="body2"][@class="xxyz5"][@name="abc"]')
element.send_keys('login")