python - Send_keys 函数触发错误消息:'消息:元素不可交互'
问题描述
我正在使用 Selenium 填写此 HTML 表单,但在输入数据时,它显示“元素不可交互”。我可以单击元素,但实际上发送字符串会产生错误。我怎样才能解决这个问题?
driver.get('https://www.masmovil.es/cobertura-fibra-optica-campos/')
prov = Select(driver.find_element_by_xpath('//*[@id="province"]'))
prov.select_by_index(32)
driver.find_element_by_xpath('//*[@id="town"]').send_keys('1')
谢谢!
解决方案
你可以试试这个css选择器:
input[id='town']
代码:
driver.find_element_by_css_selector("input[id='town']").send_keys('1')
您使用的 xpath(//*[@id="town"])
有两个条目:
一种带mm-ui-autocomplete
标签,一种带input
标签。
始终优先选择 css 选择器而不是 xpath。它比 xpath 更稳定。
如果您不想使用 css 选择器,那么您可以像这样使用 xpath:
//input[@id='town']
代码 :
driver.find_element_by_xpath("//input[@id='town']").send_keys('1')
推荐阅读
- c# - 使用数据集填充 dataGridView
- python - 用另一个列表中的项目替换列表中的项目
- typescript - Angular Reactive Form Control Errors:如何读取错误对象
- openssl - 从 RSA_public_decrypt 获取解密消息?
- php - 单点登录 - 工作流程
- javascript - 解决 Promise 或在 Array push() 方法后添加回调
- javascript - How do you get selenium webdriver to return all HTML from website?
- python - 无法理解 __add__ 函数中的一些错误
- r - 计算进入和退出之间的持续时间 - 代码优化
- android - 如何正确且永久地隐藏 Android 上的状态栏和导航栏?