使用Python版本的Selenium,是否可以单击DOM中的某个元素并指定要单击的坐标?
Java版本有这个方法clickAt http://release.seleniumhq.org/selenium-remote-control/0.9.2/doc/java/com/thoughtworks/selenium/Selenium.html#clickAt%28java.lang.String,%20java.lang.String%29,它实际上正是我正在寻找的,但在 Python 中找不到等效的东西。
这应该可以做到!也就是说,您需要使用 webdriver 中的操作链。一旦你有了一个实例,你只需注册一系列操作,然后调用perform()
来执行它们。
from selenium import webdriver
driver = webdriver.Firefox()
driver.get("http://www.google.com")
el=driver.find_elements_by_xpath("//button[contains(string(), 'Lucky')]")[0]
action = webdriver.common.action_chains.ActionChains(driver)
action.move_to_element_with_offset(el, 5, 5)
action.click()
action.perform()
这会将鼠标从按钮左上角向下移动 5 个像素,向右移动 5 个像素我感觉很幸运。然后就会click()
.
请注意,您must use perform()
。否则什么也不会发生。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)