【问题标题】:How to send Keys like Command C in Selenium Python如何在 Selenium Python 中发送像 Command C 这样的键
【发布时间】:2021-01-28 14:15:42
【问题描述】:

我认为标题说明了一切。我正在寻找一种在 Python 中使用 selenium 发送命令 C 和命令 V 的方法。我想要的是它打开一个页面,按 Command L 然后按 Command C 进行复制,然后按 Command V 将其粘贴到其他地方,但我还是找不到它!有人可以帮忙吗?

我尝试使用 ActionChains, driver.sendKeys 方法但似乎没有任何效果,所以我来到这里希望寻找答案。让我们看看会发生什么!

【问题讨论】:

  • 我会建议使用自动热键,但你在 mac。可能有替代方案。如果你找到了,这个 SO 答案可能会有所帮助:stackoverflow.com/questions/41268860/…
  • 请参阅:How do I do X? SO 的期望是,提出问题的用户不仅会进行研究以回答他们自己的问题,还会分享研究、代码尝试和结果。这表明您已经花时间尝试帮助自己,它使我们免于重复明显的答案,最重要的是它可以帮助您获得更具体和相关的答案!另见:How to Ask

标签: python selenium


【解决方案1】:

您可以使用ActionChains

from selenium.webdriver import ActionChains
from selenium.webdriver.common.keys import Keys

actions = ActionChains(driver)
actions.key_down(Keys.COMMAND).send_keys('C').key_up(Keys. COMMAND).perform()

这将发送 Command+C

【讨论】:

  • 谢谢,Rahul,但这适用于 Command+A,也可能适用于 COMMAND+C,但不适用于例如 COMMAND+P 或 COMMAND+L!
【解决方案2】:

首先导入密钥

from selenium.webdriver.common.keys import Keys

然后使用任何一个:

element.send_keys(Keys.COMMAND+"a") 
element.send_keys(Keys.COMMAND,"a") 

这两个作品你都不必使用动作类

【讨论】:

  • 谢谢,PDHide,但这不适用于例如 COMMAND+L!
  • 你试过了吗 (Keys.COMMAND+"l")
  • 你想用命令 l 做什么?
猜你喜欢
  • 2018-08-08
  • 2018-06-10
  • 1970-01-01
  • 2017-05-07
  • 1970-01-01
  • 2018-04-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多