对于每一条selenium脚本,一个http请求会被创建并且发送给浏览器的驱动,浏览器驱动中包含了一个http server。用来接收这些请求,http server接收到请求后根据请求来具体操控对应的浏览器,浏览器执行具体的测试步骤,浏览器将步骤执行结果返回给http server,http server又将结果返回给selenium的脚本,如果是错误的http代码我们就会在控制台看到对应的报错信息。
selenium最核心的三个对象:
webdriver对象:浏览器对象
find_elenium_by:定位对象
返回webelement对象
webelement对象:操作
元素定位方式:8种
xpath:
稳定准确找到元素方式:
1、相对定位:// 从网页任意位置开始匹配
2、绝对定位:/
3、绝对定位和相对定位可以混合
标签名可以用通配符(*)
xpath表达式【】里的部分,称为谓语,修饰【】前的内容,
在【】使用中,以属性为例
1、只描述属性名字,要求这个标签有这个属性
2、有属性名字和值
3、只有属性值,属性名用*表示,
属性可以按照顺序,
1、填写数字索引
2、可以使用函数,如last(),函数还可以用>=<这样运算符进行描述
谓语可以有多个描述条件
and连接
xpath轴
如果说我们的定位元素不够独特,不好定位,可以用相邻的元素的属性取定位
# ancestor:先辈
# child:所有的子元素
# following:当前标签后的所有节点
# namespace:当前标签前的节点
# parent:父节点
# following-sibling:同级别中的弟弟节点
# preceding-sibling:同级别中的哥哥节点
# 例子:
# //*[text()='Selenium3环境搭建']/parent::*/following-sibling::*
airtest:图像识别引擎
标签:web,浏览器,定位,python,selenium,server,http,属性 From: https://www.cnblogs.com/ailie/p/16994650.html