move_to_element_with_offset method – Action Chains in Selenium Python

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 move_to_element_with_offset method on Action Chains in Python Selenium. move_to_element_with_offset method is used to move the mouse by an offset of the specified element. Offsets are relative to the top-left corner of the element.
Syntax –

move_to_element_with_offset(to_element, xoffset, yoffset)
Args –

  • to_element: The WebElement to move to.
  • xoffset: X offset to move to.
  • yoffset: Y offset to move to.

Example –

filter_none

edit
close

play_arrow

link
brightness_4
code

<input type ="text" name ="passwd" id ="passwd-id" />

chevron_right


To find an element one needs to use one of the locating strategies, For example,

filter_none

edit
close

play_arrow

link
brightness_4
code

element = driver.find_element_by_id("passwd-id")
element = driver.find_element_by_name("passwd")

chevron_right


Now one can use move_to_element_with_offset method as an Action chain as below –



move_to_element_with_offset(to_element=element, 100, 200)

How to use move_to_element_with_offset Action Chain method in Selenium Python ?

To demonstrate, move_to_element_with_offset method of Action Chains in Selenium Python. Let’ s visit https://www.geeksforgeeks.org/ and operate on an element.

Program –

filter_none

edit
close

play_arrow

link
brightness_4
code

# import webdriver
from selenium import webdriver
  
# import Action chains 
from selenium.webdriver.common.action_chains import ActionChains
  
# create webdriver object
driver = webdriver.Firefox()
  
# get geeksforgeeks.org
  
# get  element 
element = driver.find_element_by_link_text("Courses")
  
# create action chain object
action = ActionChains(driver)
  
# perform the operation
action.move_to_element_with_offset(element, 100, 200).click().perform()

chevron_right


Output –
action-chains-selenium-Python




My Personal Notes arrow_drop_up

Software Developer at GeeksForGeeks

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.


Article Tags :

Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.