name定位
定义和用法
name 属性规定 input 元素的名称。
name 属性用于对提交到服务器后的表单数据进行标识,或者在客户端通过 JavaScript 引用表单数据。
注释:只有设置了 name 属性的表单元素才能在提交表单时传递它们的值。
语法
<input name="value">
name定位Python代码
find_element_by_name()
classname定位
属性的唯一性
- 使用classname的时候应确定属性的唯一性,属性不唯一,会报错
- 检查代码:将返回所有有这个classname的元素
response = driver.find_elements_by_class_name("classname")
print (response)
出现的问题及解决方法
- 使用classname定位易出现有多个一样的类名称,定位不到目标位置
- 所以可以使用遍历的方法实现使用classname进行定位
class name属性描述
- 规定元素的类的名称
- 如需为一个元素规定多个类,用空格分隔类名
- HTML 元素允许使用多个类
- 名称规则
- 必须以字母 A-Z 或 a-z 开头
- 可以是以下字符: (A-Za-z), 数字 (0-9), 横杆 ("-"), 和 下划线 ("_")
- 在 HTML 中, 类名是区分大小写的
tag定位
tag定位缺点
- 很难用tag定位
- 搜索遍历过程慢
tag定位Python代码
driver.find_elements_by_tag_name("input")
link定位
link标签定义和用法
- 定义文档与外部资源的关系
- 最常见的用途是链接样式表
注释
- link元素是空元素,它仅包含属性
- 此元素只能存在于head部分,不过它可出现任何次数
link定位Python代码
driver.find_element_by_link_text()
partical link定位
partical link定位定义
- 根据链接文本的部分进行定位
partical link定位Python代码
driver.find_element_by_partial_link_text("闻").click()