为了账号安全,请及时绑定邮箱和手机立即绑定

无法在 selenium python 中将密钥发送到 td(没有可用的输入标签)

无法在 selenium python 中将密钥发送到 td(没有可用的输入标签)

精慕HU 2021-11-30 16:58:26
我可以找到该元素并单击它:driver.find_element_by_xpath("//*[@id='tinymce']/table/tbody/tr[2]/td[1]").click()当我尝试使用 send_keys 发送给它时:driver.find_element_by_xpath("//*[@id='tinymce']/table/tbody/tr[2]/td[1]").send_keys("test")我得到    Traceback (most recent call last):  File "C:\Users\jlesslar\Documents\Scripts\post robot automater.py", line 60, in <module>    driver.find_element_by_xpath("//*[@id='tinymce']/table/tbody/tr[2]/td[1]").send_keys("test")  File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webelement.py", line 479, in send_keys    'value': keys_to_typing(value)})  File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webelement.py", line 633, in _execute    return self._parent.execute(command, params)  File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute    self.error_handler.check_response(response)  File "C:\Python27\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response    raise exception_class(message, screen, stacktrace)WebDriverException: Message: unknown error: cannot focus element  (Session info: chrome=72.0.3626.81)  (Driver info: chromedriver=2.45.615291 (ec3682e3c9061c10f26ea9e5cdcf3c53f3f74387),platform=Windows NT 10.0.17134 x86_64)至于我不能告诉 td 是我想要将 send_keys 发送到的位置,但在网上它说我应该有一个文本字段或输入标签可供我使用让 send_keys 工作(我没有)
查看完整描述

1 回答

?
慕莱坞森

TA贡献1810条经验 获得超4个赞

您应该能够通过使用 execute_script() 的 JS 来更改 innerHTML 值

首先获取您的元素:

el = driver.find_element_by_xpath("//*[@id='tinymce']/table/tbody/tr[2]/td[1]")

然后尝试直接设置innerHTML值:

driver.execute_script('arguments[0].innerHTML = "test";', el)


查看完整回答
反对 回复 2021-11-30
  • 1 回答
  • 0 关注
  • 207 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信