如何在 Python 中使用 Selenium 编辑 CodeMirror?

How do I edit CodeMirror with Selenium in Python?

每次尝试在我的网页上向 CodeMirror 中插入文本时,我都会收到以下错误消息。有谁知道如何用selenium成功编辑codemirror?

WebDriverException: Message: unknown error: Cannot read property 'setValue' of undefined

这是我的 Selenium-Python 代码

def click_component_script_editor(self):
   driver = self.driver
   line18Edit = self.driver.find_element(By.XPATH, "//html//div[@class='CodeMirror-line']//div[18]/pre[1]")      
   driver.execute_script("arguments[0].CodeMirror.setValue(arguments[1]);",
                   line18Edit,
                   "foo.bar")

找到了这个问题的答案,我不得不使用 actionChains 而不是普通的旧 send_keys。

codeMirror = self.driver.find_element(".CodeMirror")
action_chains.click(codeMirror).perform()
action_chains.send_keys("Hello World").perform()