web自动化笔记第4篇:3. 获取元素列表,思考?

举报
程序员一诺python 发表于 2025/08/07 20:12:07 2025/08/07
【摘要】 2. 键盘操作 2. 警告框处理 2.2 调用方法 frame表单切换、多窗口切换 目标 1. frame表单 窗口截图、验证码处理 1. 截图 1.1 为什么要窗口截图? 1.3 案例-2 注册实例.html 2. 验证码【了解】 2.2 验证码的处理方式 第3章-中级API 第4章-自动化测试-高级篇 UnitTest框架 3. 案例-3 3.1 操作步骤分析: 测试结果-

3. 获取元素列表

作用
    1). 查找定位所有符合条件的元素
    2). 返回的定位元素格式为数组(列表)格式
说明
    1). 列表数据格式的读取需要指定下标(下标从0开始)

使用说明

和获取单个元素find_element_by_xxx 的使用方法一样. 例如:

说明使用tag_name获取第二个元素(密码框)

代码
    ...
    driver.find_elements_by_tag_name("input")[1].send_keys("123456")
    ...

思考?

1. 在实际项目中标签没有idnameclass属性改如何定位
2. idnameclass属性值为动态获取随着刷新或加载而变化改如何定位

xpath、css定位

目标

  1. 熟悉xpath定位策略
  2. 熟悉css定位策略

1. 什么是xpath

1. XPath即为XML Path 的简称它是一种用来确定XML/HTML文档中某部分位置的语言
2. HTML可以看做是XML的一种实现所以Selenium用户可以使用这种强大的语言在Web应用中定位元素

xml: 一种标记语言,用于数据的存储和传递.后缀.xml结尾

提示Xpath为强大的语言那是因为它有非常灵活定位策略

2. xpath定位策略

1. 路径-定位
    1). 绝对路径
    2). 相对路径 
2. 利用元素属性-定位
3. 层级与属性结合-定位
4. 属性与逻辑结合-定位

定位方法

driver.find_element_by_xpath()

2.1 路径(绝对路径、相对路径)

```python 绝对路径:从最外层元素到指定元素之间所有经过元素层级路径 ;如:/html/body/div/p[2] 提示: 1. 绝对路径以/开始

相对路径:从第一个符合条件元素开始(一般配合属性来区分);如://input[@id='userA'] 提示: 2. 相

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。