首先,单击大家肯定都知道,是这样的:
# 获取元素,单击
driver.find_element_by_xpath("//ul[@id='ttForSelect']//span[contains(text(),'selenium')]").click()
那么,如果要实现悬浮、右击、双击操作,怎么办呢?webdriver是没有这个功能的。
这里要用到ActionChains(),这个类封装了所有对页面元素可以进行的高级操作。
注:Action是动作行为的意思,Chains是链表的意思,driver代表当前浏览器,合起来就是链接浏览器驱动进行指定动作行为,然后perform()执行。
具体代码如下:
# 首先需要导入ActionChains类
from selenium.webdriver.common.action_chains import ActionChains
# 获取元素
sjml = driver.find_element_by_xpath("//ul[@id='ttForSelect']//span[contains(text(),'selenium')]")
# 鼠标移动到指定元素,实现悬浮操作。
ActionChains(driver).move_to_element(sjml).perform()
# 配合强制睡眠,实现悬浮时间
time.sleep(4)
# 对指定元素,进行鼠标右击操作。
ActionChains(driver).context_click(sjml).perform()
# 使用ActionChains库,对元素进行双击操作。
ActionChains(driver).double_click(sjml).perform()
本文是亲自测试、整理后输出,希望对您有帮助。
参考资料有:
http://www.manongjc.com/detail/18-lwefxamoyjweowi.html
https://blog.csdn.net/zou75718/article/details/108102166
https://blog.csdn.net/longfei_2010/article/details/80264864
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。