我有一个网页,我有一个文本输入框,单击后会变成一个选择框。所选项目将显示在表中。即,表格用作选择输入而不是选项标签 我能够使用 xpath 获取每个表 td 的值。但是我无法选择选择中的选项。
单击输入时,它会变成选择框,我也可以使用向上或向下箭头键进行导航。
browser.find_element_by_xpath("//*[@id='not-tbl']/tbody/tr[1]/td").click()
print(browser.find_element_by_xpath("//*[@id='not-tbl']/tbody/tr[1]/td").get_attribute("innerHTML"))
输入框的路径://*[@id="not_cat"]
选择的网页:
<input id="not_cat" value="" readonly="" ct="ComboBox" k="" ks="" lid="notification_in_category-lb" op="false" st="" vt="true" dd="true" ic="6" vs="" tabindex="0" ti="0" class="urCoB2TxtDdl" onfocus="sapUrMapi_ComboBox_focusDdlb('notification_in_category',event);" onblur="sapUrMapi_ComboBox_blurDdlb('notification_in_category',event);" onkeydown="sapUrMapi_ComboBox_keydown('notification_in_category',event);" onkeypress="sapUrMapi_ComboBox_keypress('notification_in_category',event);" onselectstart="sapUrMapi_cancelEvent(event);" style="width:119;" noblur="false" ll="false">
如何将此表 td 值添加到输入中。手动执行发送密钥不起作用。一旦输入框具有焦点,它就会变成一个选择框。
我自己找到了解决方案。
我先做了一个点击,然后延迟了一下,以便填充选择。然后我用了方向键。
browser.find_element_by_id("not_cat").click()
time.sleep(3)
browser.find_element_by_id("not_cat").send_keys(Keys.DOWN * 4)