python自动化6 鼠标事件
发布日期:2023-05-26 14:13:32
浏览次数:8
分类:技术文章
本文共 3738 字,大约阅读时间需要 12 分钟。
在实际的web产品测试中,对于鼠标的操作,不单单只有click0,有时候还要用到右击、双击、拖动等操作,这些操作包含在ActionChains类中。
ActionChains类中鼠标操作常用方法: context click() 右击 double click() 双击 drag_and_drop() 拖动 move_to_element() 鼠标移动到一个元素上 click and hold() 按下鼠标左键在一个元素上from selenium import webdriverfrom config_utils import config_ufrom log_utils import LogUtilsfrom selenium.webdriver.firefox.service import Servicefrom selenium.webdriver.common.by import Byfrom selenium.webdriver.common.action_chains import ActionChainslog_path = config_u.get_log_pathlog_utils = LogUtils(log_path)class WebDriver: def __init__(self,driver_path=config_u.get_driver_path): path = Service(driver_path) self.driver = webdriver.Firefox(service=path) self.mouse = ActionChains(self.driver) def get_urls(self,urls): try: self.driver.get(urls) log_utils.print_file_log('info', '窗口打开成功') except Exception as e: log_utils.print_file_log('error','url错误:'+str(e)) def quit_browser(self): self.driver.quit() def browser_back(self): self.browser_back() def find_element_xpath(self,xpath_path,key_word): self.driver.find_element(By.XPATH,xpath_path).send_keys(key_word) def find_element_css(self,css_path,key_word): self.driver.find_element(By.CSS_SELECTOR,css_path).send_keys(key_word) def element_xpath_click(self,xpath_path): #按键点击 self.driver.find_element(By.XPATH,xpath_path).click() def element_xpath_submit(self,xpath_path): #表单提交 self.driver.find_element(By.XPATH, xpath_path).submit() def element_xpath_get_text(self,xpath_path): #获取标签文本 return self.driver.find_element(By.XPATH,xpath_path).text def element_xpath_get_attribute(self,xpath_path,class_value): # 获取标签属性值 return self.driver.find_element(By.XPATH, xpath_path).get_attribute(class_value) def element_xpath_is_display(self,xpath_path): #组件对象是否可见 return self.driver.find_element(By.XPATH, xpath_path).is_displayed() def element_xpath_is_enable(self,xpath_path): #组件对象是否禁用 return self.driver.find_element(By.XPATH, xpath_path).is_enabled() def element_xpath_is_select(self,xpath_path): #组件对象是否禁用 return self.driver.find_element(By.XPATH, xpath_path).is_selected() def element_xpath_tag_name(self,xpath_path): #获取对象标签名 return self.driver.find_element(By.XPATH, xpath_path).tag_name def element_xpath_location(self,xpath_path): #获取元素坐标 return self.driver.find_element(By.XPATH, xpath_path).location def element_xpath_screenshot(self,xpath_path): #元素截图 self.driver.find_element(By.XPATH, xpath_path).screenshot() #鼠标相关操作 def element_xpath_right_click(self,xpath_path): #鼠标右击 element=self.driver.find_element(By.XPATH,xpath_path) self.mouse.context_click(element).perform() def element_xpath_move_element(self,xpath_path): #鼠标浮在元素上 element=self.driver.find_element(By.XPATH,xpath_path) self.mouse.move_to_element(element).perform() def element_xpath_double_click(self,xpath_path): #双击 element=self.driver.find_element(By.XPATH,xpath_path) self.mouse.double_click(element).perform() def element_xpath_drag_drop(self,xpath_path): #拖动 element=self.driver.find_element(By.XPATH,xpath_path) self.mouse.drag_and_drop(element).perform() def element_xpath_click_hold(self,xpath_path,sec): #按下鼠标左键在一个元素上 sec 长按时间 element=self.driver.find_element(By.XPATH,xpath_path) self.mouse.click_and_hold(element).pause(sec).release().perform()if __name__ == '__main__': urls = 'http://127.0.0.1/zentao/user-login.html' driver = WebDriver() driver.get_urls(urls)
转载地址:https://blog.csdn.net/xiaoqiukuzi/article/details/129151430 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
感谢大佬
[***.8.128.20]2024年04月01日 20时00分48秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
剑指数据结构-对称的二叉树
2019-04-28
剑指数据结构-平衡二叉树
2019-04-28
剑指数据结构-替换空格
2019-04-28
剑指数据结构-最小的K个数
2019-04-28
剑指数据结构-数据流中的中位数
2019-04-28
数组只出现一次的两个数字
2019-04-28
剑指数据结构-滑动窗口最大值
2019-04-28
第一个只出现一次的字符
2019-04-28
剑指 -扑克牌顺子
2019-04-28
Jetson tx2安装各个版本的pytorch
2019-04-28
Java图形界面编程--抽象类
2019-04-28
Java图形界面编程--接口interface
2019-04-28
Java图形界面编程--通过类本身和匿名类实现ActionListener
2019-04-28
Java图形界面编程--JMenu菜单
2019-04-28
CentOS安装Python3:一条命令解决
2019-04-28
DIY一个远程宠物投喂装置
2019-04-28
SeqSlam论文阅读和实验
2019-04-28
ORB-SLAM2学习简单记录
2019-04-28