webdriver python api_python webdriver API

本文详细介绍了使用Python的Selenium Webdriver API进行浏览器自动化操作,包括浏览器的前进后退、窗口尺寸调整、元素定位与操作、鼠标和键盘事件、等待时间设置、对象定位与批量操作、对话框处理、多窗口管理、文件上传下载等内容,是自动化测试和网页交互的实用教程。
摘要由CSDN通过智能技术生成

一、

浏览器的操作

from

selenium import

webdriver

driver = webdriver.Firefox()

1、driver.maximize_window()

#将浏览器最大化显示

2、driver.set_window_size(480, 800) #设置浏览器宽480、高800显示

3、driver.back() #浏览器的后退

4、driver.forward() #浏览器的前进

二、

简单对象的定位

find_element_by_id()

find_element_by_name()

find_element_by_class_name()

find_element_by_tag_name()

find_element_by_link_text()

find_element_by_partial_link_text() #部分连接的内容来定位find_element_by_xpath()

find_element_by_css_selector()

例:driver.find_elements_by_css_selector('input[type=checkbox]'

)

XPath 的定位方式非常灵活和强大的,firebug

HTML 和 firePath

可以非常方便的通过

XPath 方式对页面元素进行定位。而且

XPath 可以做布尔逻辑运算,例如:

//div[@id=’ hd’ or

@name=’ q’ ]。

但是缺陷也非常明显: 1、 性能差, 定位元素的性能要比其它大多数方式差;

2、 不够健壮,XPath会随着页面元素布局的改变而改变;

3. 兼容性不好,在不同的浏览器下对

XPath 的实现是不一样的。

三、

操作测试对象

1、webdriver

中比较常用的操作元素的方法有下面几个:

S

clear 清除元素(如:输入框)的内容:driver.find_element_by_id("user_name").clear()

S

send_keys 在元素上模拟按键输入:driver.find_element_by_id("user_name").send_keys("username")

S

click 单击元素(按钮、下拉框、图片、链接等):driver.find_element_by_id("dl_an_submit").click()

S

submit 提交表单:driver.find_element_by_id("dl_an_submit").submit()

2、WebElement

接口常用方法:

size:返回元素的尺寸

例:size=driver.find_element_by_id("kw").size

text:获取元素的文本

例:text=driver.find_element_by_id("cp").text

get_attribute(name):获得属性值

例:attribute=driver.find_element_by_id("kw").get_attribute('type'

)

is_displayed():设置该元素是否用户可见

例:result=driver.find_element_by_id("kw").is_displayed()

四、

鼠标事件

from

selenium.webdriver.common.action_chains import ActionChains

注:import后的方法的大小写。

S

click() 单击

S

context_click() 右击

S

double_click() 双击 (web程序中常应用于地图操作)

S

drag_and_drop(source,target) 拖动

S

move_to_element() 鼠标悬停在一个元素上<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值