selenium - webdriver的常用操作


webdriver对象常用操作

访问url - get()

代码如下(示例):

driver.get('https://www.taobao.com/')

本机上没有浏览器,需要远程调用浏览器进行自动化测试 – remote WebDriver

待后面使用到时再学习

调整浏览器窗口大小

设置指定宽高的用途:我们一般会通过PC浏览器访问手机网站,通过该方式即可调整浏览器为手机屏幕的宽、高,可以发现一些显示问题

代码如下(示例):

driver.set_window_size(1000,600) # 设置宽1000px 高800px
driver.maximize_window() # 设置最大
driver.minimize_window() # 设置最小

后退 - back()

代码如下(示例):

driver.back()

前进 - forward()

代码如下(示例):

driver.forward()

刷新 - refresh()

代码如下(示例):

driver.refresh()

提交 - submit()

代码如下(示例):

driver.find_element(By.ID,'kw').send_keys('selenium')
driver.find_element(By.ID,'su').submit() # 和chick()效果类似

退出驱动关闭所有窗口 - quit()

代码如下(示例):

driver.quit()

关闭当前窗口 - close()

代码如下(示例):

driver.close()

获取当前页面的url - current_url

代码如下(示例):

driver.current_url
print(driver.current_url) # 打印获取到的url

获取当前所在窗口句柄 - current_window_handle

代码如下(示例):

driver.get('https://www.taobao.com/') # 访问域名
driver.maximize_window() # 最大化窗口

print('点击之前',driver.current_window_handle) # 获取当前窗口句柄
> 点击之前 CDwindow-BA090B3D38C7318D4B15374227CC0C93

driver.find_element(By.LINK_TEXT,'四件套').click()

print('点击之后',driver.current_window_handle)
> 点击之后 CDwindow-BA090B3D38C7318D4B15374227CC0C93
# 浏览器窗口句柄是不会自己变换的,可以看出点击“四件套”之后窗口句柄还是之前的那个,如果需要更换当前句柄,需要手动操作

获取所有窗口句柄 - current_window_handle

代码如下(示例):

driver.get('https://www.taobao.com/') # 访问域名
driver.maximize_window() # 最大化窗口

print('点击之前',driver.window_handles) # 获取所有窗口句柄
> 点击之前 ['CDwindow-BA090B3D38C7318D4B15374227CC0C93']

driver.find_element(By.LINK_TEXT,'四件套').click()

print('点击之后',driver.window_handles)
> 点击之后 ['CDwindow-BA090B3D38C7318D4B15374227CC0C93', 'CDwindow-FF386DA16ADE8BF7C87902E696C4DD9D']
# 实际操作点击“四件套”之后,会多出来一个浏览器窗口,在这个例子中也可以看出,点击之前就一个窗口句柄,点击之后就有两个窗口句柄了

切换浏览器窗口 - switch_to_window(handle)

代码如下(示例):

# 获取浏览器窗口句柄,原网页为句柄0,新网页为句柄1,依此类推
windows = diver.window_handles

# 定位到预想关闭的浏览器标签中
diver.switch_to.window(windows[1])

# 对这个句柄为1的标签操作关闭
diver.close()

# 回到原标签中,继续后续操作
diver.switch_to.window(windows[0])

切换frame - switch_to_frame(frame_reference)

代码如下(示例):

#切换框架,直接输入iframe的name或id属性,或者传入定位的元素
driver.switch_to_frame(frame_reference)

获取元素坐标 - location

代码如下(示例):

element = driver.find_element(By.LINK_TEXT,'四件套')
print(element.location) # 打印当前元素获取到的坐标

获取元素的tag_name - tag_name

代码如下(示例):

print(driver.find_element(By.ID,'kw').tag_name) # 打印出来百度的kw元素的标签名是input

获取浏览器名字 - driver.name

代码如下(示例):

print(driver.name)

返回当前页面的标题 - title

可以验证当前页面是否执行成功的一个标志

代码如下(示例):

print(driver.title)

清空输入框内容 - clear()

代码如下(示例):

driver.find_element(By.ID,'kw').send_keys('python')
driver.find_element(By.ID,'kw').clear()

截屏当前页面 - get_screenshot_as_file(filename)

代码如下(示例):

driver.get_screenshot_as_file('D:\\1.png') # 指定一个文件路径

获取当前窗口的坐标 - get_window_position()

代码如下(示例):

print(driver.get_window_position())

获取当前窗口的宽高 - get_window_position()

代码如下(示例):

print(driver.get_window_size())

获取当前窗口的宽高和坐标 - get_window_rect()

代码如下(示例):

print(driver.get_window_rect())
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值