Selenium’s Python Module is built to perform automated testing with Python. ActionChains are a way to automate low-level interactions such as mouse movements, mouse button actions, keypress, and context menu interactions. This is useful for doing more complex actions like hover over and drag and drop. Action chain methods are used by advanced scripts where we need to drag an element, click an element, double click, etc.
This article revolves around key_down method on Action Chains in Python Selenium. key_down method is used to send a key press, without releasing it. this method is used in case one wants to press, ctrl+c, or ctrl+v. For this purpose one needs to first hold the ctrl key down and then press c. This method automates this work. It should only be used with modifier keys (Control, Alt and Shift).
Syntax –
key_down(value, element=None)
value: The modifier key to send. Values are defined in Keys class.element: The element to send keys. If None, sends a key to current focused element.
Example –
One can use key_down method as an Action chain as below. This example clicks Ctrl+C after opening the webpage
ActionChains(driver).key_down(Keys.CONTROL).send_keys('c').key_up(Keys.CONTROL).perform()
How to use key_down Action Chain method in Selenium Python ?
To demonstrate, key_down method of Action Chains in Selenium Python. Let’ s visit https://www.geeksforgeeks.org/ and press ctrl+f to open search bar.
Program –
# import webdriver from selenium import webdriver # import Action chains from selenium.webdriver.common.action_chains import ActionChains # import KEYS from selenium.webdriver.common.keys import Keys # create webdriver object driver = webdriver.Firefox() # get geeksforgeeks.org # create action chain object action = ActionChains(driver) # perform the oepration action.key_down(Keys.CONTROL).send_keys('F').key_up(Keys.CONTROL).perform() |
Output –

Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.
To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course.
Recommended Posts:
- click method - Action Chains in Selenium Python
- send_keys method - Action Chains in Selenium Python
- reset_actions method - Action Chains in Selenium Python
- release method - Action Chains in Selenium Python
- perform method - Action Chains in Selenium Python
- pause method - Action Chains in Selenium Python
- move_to_element_with_offset method - Action Chains in Selenium Python
- drag_and_drop_by_offset method - Action Chains in Selenium Python
- key_up method - Action Chains in Selenium Python
- move_to_element method - Action Chains in Selenium Python
- double_click method - Action Chains in Selenium Python
- click_and_hold - Action Chains in Selenium Python
- context_click - Action Chains in Selenium Python
- drag_and_drop - Action Chains in Selenium Python
- move_by_offset - Action Chains in Selenium Python
- Action Chains in Selenium Python
- Python | Button Action in Kivy
- Floating Action type button in kivy - Python
- Animated Floating Action Button in kivy - Python
- PyQt5 QSpinBox – Adding action when object name changed
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.

