我需要 selenium 和 python 来执行组合键 Shift + Enter,以便插入新行而不发送消息 (\n
发送消息),使用此代码不会产生错误,但也不会创建新行。 message_box
变量已定义,并且其中的消息确实会显示。
代码试验:
action = ActionChains(driver)
message_box.send_keys("test1")
action.key_down(Keys.SHIFT)
action.send_keys(Keys.RETURN)
action.key_up(Keys.SHIFT)
message_box.send_keys("test2")
最佳答案
您可以将事件链接到 ActionChains() 中并使用以下任一解决方案在链中执行它们:
使用SHIFT和RETURN:
ActionChains(driver).move_to_element(message_box).send_keys("test1").key_down(Keys.SHIFT).send_keys(Keys.RETURN).key_up(Keys.SHIFT).send_keys("test2").perform()
使用SHIFT和ENTER:
ActionChains(driver).move_to_element(message_box).send_keys("test1").key_down(Keys.SHIFT).send_keys(Keys.ENTER).key_up(Keys.SHIFT).send_keys("test2").perform()
注意:您必须添加以下导入:
from selenium.webdriver.common.keys import Keys
关于python - Selenium Python ActionChain 预制方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73178826/