使用 Python 版本的 Selenium,是否可以单击 DOM 中的某个元素并指定要单击的坐标?
Java版有方法clickAt
,它实际上完全符合我的要求,但在 Python 中找不到等价物。
最佳答案
应该这样做!也就是说,您需要使用来自 webdriver 的 Action 链。一旦你有了一个实例,你只需注册一堆 Action ,然后调用 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()
.
请注意,您必须使用 perform()
。否则什么都不会发生。
关于python - Selenium - 点击某个位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16807258/