Selnium学习——选择元素的基本方法

对于百度搜索页面,如果我们想自动化输入 软件测试 ,怎么做呢?

这就是在网页中,操控界面元素。

web界面自动化,要操控元素,首先需要选择界面元素 ,或者说定位界面元素

就是先告诉浏览器,你要操作哪个界面元素, 让它找到你要操作的界面元素。

我们必须要让浏览器 先找到元素,然后,才能操作元素。

选择元素的方法

对应web自动化来说, 就是要告诉浏览器,你要操作的界面元素是什么。

那么,怎么告诉浏览器 呢?

方法就是:告诉浏览器,你要操作的这个 web 元素的 特征 。

就是告诉浏览器,这个元素它有什么与众不同的地方,可以让浏览器一下子找到它。

元素的特征怎么查看?

可以使用浏览器的 开发者工具栏 帮我们查看、选择 web 元素。

请大家用chrome浏览器访问百度,按Ctrl+shift+I后,点击下图箭头处的Elements标签,即可查看页面对应的HTML 元素

在这里插入图片描述
在这里插入图片描述

之后,鼠标在界面上点击哪个元素,就可以查看 该元素对应的html标签 了。

比如,前面的图的高亮处,就是谷歌搜索输入框 对应的 input元素
在这里插入图片描述

根据 元素的id 属性选择元素

仔细看上面的 input元素 内容,会发现它有一个属性叫id。
在这里插入图片描述
我们可以把 id 想象成元素的编号, 是用来在html中标记该元素的。 根据规范, 如果元素有id属性 ,这个id 必须是当前html中唯一的。

所以如果元素有id, 根据id选择元素是最简单高效的方式。

这里百度搜索框的id值为kw
下面的代码,可以自动化在浏览器中 访问百度,并且在输入框中搜索 软件测试 。

from selenium import webdriver

# 创建 WebDriver 对象,指明使用chrome浏览器驱动
wd = webdriver.Chrome()

# 调用WebDriver 对象的get方法 可以让浏览器打开指定网址
wd.get('https://www.baidu.com')

# 根据id选择元素,返回的就是该元素对应的WebElement对象
element = wd.find_element_by_id('kw')

# 通过该 WebElement对象,就可以对页面元素进行操作了
# 比如输入字符串到 这个 输入框里
element.send_keys('软件测试\n')

其中

wd = webdriver.Chrome()

driver赋值的是 WebDriver 类型的对象,我们可以通过这个对象来操控浏览器,比如 打开网址、选择界面元素等。

wd.find_element_by_id('kw')

使用了 WebDriver 对象 的方法 find_element_by_id,

这行代码运行是,就会发起一个请求通过 浏览器驱动 转发给浏览器,告诉它,需要选择一个id为 kw 的元素。

浏览器,找到id为kw的元素后,将结果通过 浏览器驱动 返回给 自动化程序, 所以 find_element_by_id 方法会 返回一个 WebElement 类型的对象

这个WebElement 对象可以看成是对应 页面元素 的遥控器。

我们通过这个WebElement对象,就可以 操控 对应的界面元素。

比如 :

调用这个对象的 send_keys 方法就可以在对应的元素中 输入字符串,

调用这个对象的 click 方法就可以 点击 该元素。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值