Web自动化——元素操作&浏览器操作&获取元素信息&键鼠操作方法

1 元素操作方法

通过元素操作模拟用户进行数入或删除元素内容,模拟点击操作等。

element = driver.find_element(By.ID,“id名”)

(1) 点击:element.click()

(2) 输入内容:element.send_keys(输入内容)

(3) 清除文本:element.clear()

2 浏览器操作方法

(1)最大化窗口:driver.maximize_window()
模拟点击浏览器最大化按钮。

(2)设置浏览器窗口大小:driver.set_window_size()
设置浏览器宽和高(像素)

(3)设置浏览器窗口位置:driver.set_window_position()

(4)后退:driver.back()
模拟点击浏览器后退按钮

(5)前进:driver.forward()
模拟点击浏览器前进按钮

(6)刷新:driver.refresh()
模拟点击浏览器刷新按钮

(7)关闭当前窗口:driver.close()
模拟点击浏览器关闭按钮

(8)关闭浏览器驱动对象:driver.quit()
关闭所有程序启动的窗口

(9)获取页面title:driver.title

(10)获取当前页面URL:driver.current_url

3 获取元素信息方法

通过学习Selenium封装的获取元素信息的方法,了解如何获取元素的文本和属性值,了解如何让程序判断元素是否为可见状态等。

element = driver.find_element(By.ID,“id名”)

(1)返回元素大小:element.size

(2)获取元素文本:element.text

(3)获取属性值:element.get_attribute(“元素的属性名”)

(4)判断元素是否可见:element.is_displayed()

(5)判断元素是否可用:element.is_enabled()

(6)判断元素是否选中(用来检查复选框或单选按钮是否选中):element.is_selected()

4 键鼠操作

4.1 鼠标操作方法

常见的鼠标操作有: 点击、 右击、 双击、 悬停、 拖拽等,在Selenium中将操作鼠标的方法封装在ActionChains类中。在ActionChains类中所有提供的鼠标事件方法,在调用的时候所有的行为都存储在ActionChains对象中,
在使用鼠标方法前,step1: 需先导入ActionChains包: from selenium.webdriver.common.action_chains import ActionChains

step2: 需实例化ActionChains对象:action = ActionChains(driver)

step3: 使用action对象调用对应的鼠标操作方法(如双击、右键等)

  • (1)鼠标右键:action.context_click(element)

  • (2)鼠标双击: action.double_click(element)

  • (3)鼠标拖拽:action.drag_and_drop(源元素,目标元素),将源元素释放到目标元素

    • 源元素:source = driver.find_element(By.ID,“id名”)
    • 目标元素:target = driver.find_element(By.ID,“id名”)
    • 拖拽:action.drag_and_drop(source,target).perform()
  • (4)鼠标悬停:action.move_to_element(element),模拟鼠标悬停在指定的的元素上

step4: 调用perform()方法执行鼠标事件: action.perform() 或者 在使用action调用双击、拖拽等方法后.perform(),如:action.context_click(element).perform()
* 必须调用perform()方法才能执行鼠标事件

4.2 键盘操作方法

Selenium中把键盘的按键都封装在Keys类中,在进行键盘操作前,需先导入Keys包:
from selenium.webdriver.common.keys import Keys

(1)删除键(BackSpace):element.send_keys(Keys.BACK_SPACE)

(2)空格键(Space):element.send_keys(Keys.SPACE)

(3)制表键(Tab):element.send_keys(Keys.TAB)

(4)回退键(Esc):element.send_keys(Keys.ESCAPE)

(5)回车键(Enter): element.send_keys(Keys.ENTER)

(6)全选(Ctrl+A):
win系统:element.send_keys(Keys.CONTROL,‘a’)
Mac系统:element.send_keys(Keys.COMMAND,‘a’)

(7)复制(Ctrl+C):
win系统:element.send_keys(Keys.CONTROL,‘c’)
Mac系统:element.send_keys(Keys.COMMAND,‘c’)

(8)粘贴(Ctrl+V):
win系统:element.send_keys(Keys.CONTROL,‘v’)
Mac系统:element.send_keys(Keys.COMMANDL,‘v’)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值