自动化学习【3】- 基础操作

文章目录

一、selenium 基本事件操作:
# 导入依赖包
from selenium.webdriver.remote.webelement import WebElement

说明:直接采用函数封装的方式记录笔记

1、模拟鼠标点击操作:click()
def click( element: WebElement):
    element.click()
2、模拟内容输入:send_keys( *value )

注:send_keys 函数还可以模拟键盘操作,与 ActionChainssend_keys 操作类似

# 此处执行了 清空 与 输入内容 两个操作
def send_keys(element: WebElement, message: str):
	element.clear(element)
    element.send_keys(message)
3、清空输入框内容:clear()
def clear(element: WebElement):
    element.clear()
4、获取元素的文本信息:text()
def text( element: WebElement):
	return element.text()
5、判断页面元素是否存在:is_displayed()
def is_displayed(element: WebElement):
    return element.is_displayed()
6、判断页面元素是否为选中状态:is_selected()

**说明:**一般用于校验复选框,单选框等组件

def is_selected(element: WebElement):
    return element.is_selected()
7、判断页面元素是否为激活状态:is_enabled()

**说明:**一般用于判断按钮是否为置灰不可点击等

def is_enabled(element: WebElement):
    return element.is_enabled()
8、获取标签属性的值:get_attribute(name)
def get_attribute(element: WebElement, name: str):
    return element.get_attribute(name)
9、获取页面元素标签的类型:tag_name
def tag_name(element: WebElement):
    return element.tag_name
10、 截取元素范围,并保存图片 screenshot(filename)
def screenshot(element:WebElement, filename:str):
    element.screenshot(filename)
二、Selenium WebDriver 操作:
# 导入依赖包
from selenium import webdriver as driver

driver = webdriver.Chrome(executable_path='../driver/chromedriver.exe')
1、打开目标地址:get( url )
def get( url ):
	driver.get(url)
2、浏览器窗口最大化:maximize_window()
def max():
	driver.maximize_window()
3、浏览器窗口最小化:minimize_window()
def min():
	driver.minimize_window()
4、获取浏览器当前标签页 title: driver.title
def browser_title():
    return self.driver.title
5、通过 js 操作页面元素:execute_script(script)
def execute_script(js):
    return driver.execute_script(js)
6、浏览器返回:back()
def back():
    driver.back()
7、浏览器前进:forward()
def forward():
	driver.forward()
8、获取 cookie 值:get_cookie(name)
def get_cookie(name):
	return driver.get_cookie(name)
9、获取 cookies :get_cookies()
def get_cookies():
	return driver.get_cookies()
10、添加 cookie 信息:add_cookie(cookie_dict)
def add_cookie(cookie:dict):
	driver.add_cookie(cookie_dict=cookie)
11、删除 cookie 信息:delete_cookie(name)
def delete_cookie(name):
	driver.delete_cookie(name)
12、删除所有 cookie 信息:delete_all_cookies()
def delete_all_cookies():
	driver.delete_all_cookies()
13、webdriver 切换操作:switch_to
a. 切换浏览器窗口:switch_to.window(name)
def switch_to_window(name):
	driver.switch_to.window(name)
b. 返回当前焦点的WebElement对象: active_element
def active_element():
	return driver.switch_to.active_element
c. 浏览器的 alertconfirmprompt 框操作: alert
  • alert框内输入文案:send_keys( mes )

    def alert_sendkeys( mes ):
    	driver.switch_to.alert.send_keys( mes )
    
  • alert框内点击确认按钮:

    def alert_accept():
    	driver.switch_to.alert.accept()
    
  • 离开alert框:

    def alert_dismiss():
        driver.switch_to.alert.dismiss()
    
  • 获取alert框内的文案信息:text

    def alert_text():
        return driver.switch_to.alert.text
    
d. 切换到 frame 标签:
def to_frame(frame_reference)
	driver.switch_to.frame(frame_reference)
e. 切换到父级 frame :parent_frame()

**说明:**frame嵌套是不提倡的,比较影响性能,若是发现可以提交给开发建议优化

def to_parent_frame():
	driver.switch_to.parent_frame()
f. 切换回页面主体:default_content()
def to_default_content():
    driver.switch_to.default_content()
**14、**获取当前页面的 URL : current_url
def current_url():
    return driver.current_url
15、 获取当前页面 handle :current_window_handle
def current_handle():
    return driver.current_window_handle
16、 获取所有浏览器窗口的 handle : window_handles
def window_handles():	
   return driver.window_handles
17、 获取当前窗口的 x , y位置:get_window_position(windowHandle='current')
def get_window_position(windowHandle='current')	
    return driver.get_window_position(windowHandle)
18、 获取当前窗口的 x, y 坐标 ,以及窗口的 宽度与高度: get_window_rect()
def get_window_rect():
	return driver.get_window_rect()
19、 获取当前窗口的 宽度与高度:get_window_size(windowHandle='current')
def get_window_size():
	return  driver.get_window_size()
20、截图当前窗口:save_screenshot(filename)
def screenshot(filename):
	driver.save_screenshot(filename)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值