班级网站建设心得体会范文,wordpress企业插件,哪里网站可以做微信头像,自媒体营销的策略和方法对于鼠标操作 #xff0c;我们可以通过click()方法进行点击操作 #xff0c;但是有些特殊场景下的操作 #xff0c;click()是无法完成的 #xff0c;比如 #xff1a;我想进行鼠标悬停 、想进行鼠标拖拽 #xff0c;怎么办 #xff1f;
这个时候你用click()是无法完成的…
对于鼠标操作 我们可以通过click()方法进行点击操作 但是有些特殊场景下的操作 click()是无法完成的 比如 我想进行鼠标悬停 、想进行鼠标拖拽 怎么办
这个时候你用click()是无法完成的 为此selenium提供这样一个类 专门用于进行鼠标 操作 这个类叫ActionChains .
1.ActionChains介绍 # 鼠标操作说明 : 主要针对鼠标的一些特殊操作 比如 右键 悬停 、拖拽 双击
导入 from selenium.webdriver.common.action_chains impot ActionChains
功能(方法) 右键 content_click(elem) ,elem代表元素对象悬停 move_to_element(elem)拖拽 drag_and_drop(source,target) source代表源 target代表目的地双击 double_click(elem)执行 perform()
说明 进行鼠标操作后必须要调用perform()执行方法才能真正的操作 否则鼠标是不会实现操作的。操作步骤
1. 导包 from selenium.webdriver.common.action_chains impot ActionChains
2. 创建对象 : action ActionChains(driver) ,其中这个类的参数为driver对象
3. 调用功能的方法 action.content_click(elem) 其中elem是要操作的元素
4.调用执行方法 : action.perform()
2.具体案例
需求通过selenium完成对tpshop的注册操作具体如下 在首页的登录按钮上进行鼠标右击 将鼠标悬停在家用电器上 代码示例
from selenium import webdriver
import time
from selenium.webdriver.common.action_chains import ActionChains# 1. 创建浏览器对象
driver webdriver.Chrome()
driver.maximize_window()# 2. 输入地址 http://localhost
driver.get(http://localhost)# 初始化对象
action ActionChains(driver)time.sleep(1)
# 执行操作 鼠标右键
login_elem driver.find_element_by_link_text(登录)
action.context_click(login_elem)# 执行上面的操作
action.perform()time.sleep(2)# 执行操作 悬停
elem driver.find_element_by_css_selector(a[title家用电器])
action.move_to_element(elem)
action.perform()