存在一个受密码保护的政府页面;我的代码很好地记录了我。然后,我尝试使用以下代码填充以下输入:
<td ><script type='text/javascript'>$('.inputs').keydown(function (e) {if (e.keyCode == 39)
{$(this).parent('td').next().find('.inputs').focus();}else if(event.keyCode == 13)
{event.preventDefault();$(this).parent('td').next().find('.inputs').focus();return false;}
else if (e.keyCode == 37){$(this).parent('td').prev().find('.inputs').focus();}});</script>
<input type="Text" ID="95413" Name="WellName_95413" value="" class="bind_WellName inputs"
onkeyup="changeValue(event)" onchange="changeValue(event)"
style="width:100%;margin: 0px 2px 0px 2px; height: 25px;" ></td>
代码:
driver = webdriver.Chrome('C:/Users/km/Documents/chromedriver245/chromedriver.exe')
well_name = driver.find_element_by_id('95413')
actions = webdriver.ActionChains(driver)
actions.move_to_element(well_name)
actions.click()
actions.send_keys('test well name')
actions.perform()
什么也没发生-该字段没有填充文本,控制台上也没有显示错误,只是说:
C:\Python37>python.exe eForm_dev.py
DevTools listening on ws://127.0.0.1:56091/devtools/browser/771d733c-e1a1-4bbc-b43b-ac8a4f39a122
C:\Python37>
我尝试了其他同样无效的方法:
well_name.send_keys()
本身well_name.click()
然后well_name.send_keys()
well_name.send_keys(Keys.ENTER)
然后well_name.send_keys()
答案 0 :(得分:0)
我偶然发现了
time.sleep(3)
之前
actions = webdriver.ActionChains(driver)
etc.
它有效。为什么?