Search code examples
pythonpython-2.7selenium-webdriverwebdriversendkeys

How to send several keys in WebDriver with Python?


How to make Python code in WebDriver to press Command+Shift+H buttons on keyboard (or keys)?

Update:

info: Pushing command to appium work queue: "au.mainApp().getTreeForXML()"
debug: Sending command to instruments: au.mainApp().getTreeForXML()
info: [INSTSERVER] Sending command to instruments: au.mainApp().getTreeForXML()
info: [INSTSERVER] Socket data received (8192 bytes)
info: [INSTSERVER] Socket data received (4494 bytes)
info: [INSTSERVER] Socket data being routed for 'cmd' event
info: [INSTSERVER] Got result from instruments: {"status":0,"value":"{\"UIAApplication\":{\"@\":{\"name\":\"AppName\",\"label\":\"AppName\",\"value\":null,\"dom\":null,\"enabled\":true,\"valid\":true,\"visible\":true,\"hint\":null,\"path\":\"/0\",\"x\":0,\"y\":20,\"width\":320,\"height\":548},\">\":[{\"UIAWindow\":{\"@\":{\"name\":null,\"label\":

Solution

  • Use send_keys():

    from selenium.webdriver.common.keys import Keys
    
    element.send_keys(Keys.COMMAND, Keys.SHIFT, 'H')
    

    Also see: The Keys implementation.