有没有办法让硒同时按下Command + Shift + C键?

时间:2019-07-27 03:51:38

标签: python selenium google-chrome pycharm

我试图通过在Mac OS上按Command + Shift + c,然后按Command + Shift + m来在其移动视图中打开Chrome。

我正在将Pycharm与Python3和Selenium一起使用。我尝试了许多不同的组合,这些是我记得的三种。

driver = webdriver.Chrome("/Users/y~~/chromedriver")
driver.get("https://instagram.com/")

keys = Keys()
actions = ActionChains(driver)

driver.find_element_by_tag_name('body').send_keys(keys.COMMAND + keys.SHIFT + 'c')
actions.key_down(keys.SHIFT).key_down(keys.COMMAND).send_keys('c').key_up(keys.SHIFT).key_up(keys.COMMAND).perform()
actions.send_keys(keys.COMMAND + keys.SHIFT +'c').perform()

通过按三个按钮,应该会出现开发人员的工具箱。然后使用相同的命令按cmd + shift + m,它将打开/显示移动视图。

2 个答案:

答案 0 :(得分:0)

要在“移动”视图中打开镶边,请参见以下代码。参考Mobile Emulation

from selenium import webdriver

from selenium.webdriver.chrome.options import Options

mobile_emulation = {

    "deviceMetrics": { "width": 360, "height": 640, "pixelRatio": 3.0 },

    "userAgent": "Mozilla/5.0 (Linux; Android 4.2.1; en-us; Nexus 5 Build/JOP40D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Mobile Safari/535.19" }

chrome_options = Options()

chrome_options.add_experimental_option("mobileEmulation", mobile_emulation)

driver = webdriver.Chrome(executable_path='/Users/~location_of_chromedriver/chromedriver', chrome_options = chrome_options)

答案 1 :(得分:0)

Mac OS的Chromedriver中存在一个错误,该错误导致许多命令键组合无法正常工作。

https://bugs.chromium.org/p/chromedriver/issues/detail?id=3023#c2

您可以通过使用Geckodriver或在其他操作系统上运行测试来解决。