Selenium自动化测试(二)之selenium使用和元素定位

Selenium自动化测试(二)之selenium使用和元素定位

(一)selenium的简单使用

1、导包
from selenium import webdriver
2、初始化浏览器
# 驱动在python环境中
browser = webdriver.Chrome()
# 驱动不放在python环境中,添加executable_path关键字
browser = webdriver.Chrome(executable_path=r"D:\chromedriver.exe")
3、打开网址
browser.get("http://www.baidu.com")
4、对浏览器的一些简单操作
# ------------------获取浏览器信息----------------
# 获取网址
browser.current_url
# 获取网页标题
browser.title
# 获取网页中的源码
browser.page_source
# 获取所有的窗口,所有的标签页(list类型)
browser.window_handles
# 获取现在正处于的标签页, 返回的是窗口句柄(窗口ID)
browser.current_window_handle


# ------------------浏览器动作--------------------
# 最大化窗口
browser.maximize_window()
# 最小化窗口
browser.minimize_window()
# 设置窗口的大小,参数为:长宽,单位:像素
browser.set_window_size(800, 600)
# 刷新
browser.refresh()
# 后退
browser.back()
# 前进
browser.forward()
5、关闭标签页和浏览器
# 关闭标签页
browser.close()
# 关闭浏览器
browser.quit()

(二)元素定位(百度为例)

  • 在python中模拟点点点,实际上就是通过在 HTML 当中去找到需要操作的元素(标签)进行模拟操作
  • find_element_by_...:返回的是一个WebElement对象,如果有多个值也只会返回第一个值
  • find_elements_by_...:返回的是一个WebElement对象list列表,不管有多少个值都返回的列表(可以通过索引获取你需要的哪一个)
  • send_keys("内容"):输入内容
  • click():单击
  • 在python中通过元素的特征进行查找元素,根据id属性查找(id具有唯一性)
注意点:
  • id属性可能会是动态变化的。
  • 如果id中包含数字,那么这个id属性你要小心了,很大可能是动态变化的。
  • 像那种拼音单词之类的,一般情况下是不可变的id。
* ***以下用的都是:find_element_by_... ***
1、根据ID属性进行定位,查询到的是一个WebElement对象
input_element = browser.find_element_by_id("kw")
print(input_element)
# 输入内容
input_element.send_keys("Python")
2、根据name属性进行定位
element = browser.find_element_by_name("wd")
print(element)
3、根据class属性进行定位
e = browser.find_element_by_class_name("s_ipt")
print(e)
4、通过tagname(标签名称)进行定位。查找到的元素不具备唯一性
e = browser.find_element_by_tag_name("a")
print(e)
5、定位a标签超链接
e = browser.find_element_by_link_text('新闻')
# 点击链接
e.click()
6、定位a标签超链接,模糊定位
e = browser.find_element_by_partial_link_text('新')
e.click()
7、xpath
8、css 选择器

【完】


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值