在chrome-console中进行xpath/css/js定位

 

一、Xpath
console中调用xpath的基本格式:$x("xpath表达式")

1.1 绝对定位与相对定位
绝对定位:$x("/xpath表达式")
相对定位:$x("//xpath表达式")


1.2 通配符与不包含筛选
属性@

通配符*

不包含not()

包含contains()


1.3 Xpath函数运算的简单实用
注意:xpath函数有很多,这里只是列举了一些简单的函数,若查看其他函数,请看xpath官方文档;

定位时去除空格
例:


去除空格


统计元素个数
例:统计行数为2行的元素个数

筛选name以dl开头:starts-with(name(), ‘dl’)
筛选字符串长度等于2的:string-lenth(name())=2

1.4 各种亲戚标签的定位
父标签parent::
比如定位div父标签parent::div

子标签child

哥哥标签preceding-sibling::

弟弟标签following-sibling::

后代标签descendant::

祖先标签ancestor::


二、css选择器
2.1 基本格式
console中调用css的基本格式:$("css表达式")或者$$("css表达式")
谷歌插件:SelectorGadget

2.2 常用符号
.点,代表每个标签class的属性为xx

#,代表整个标签中有个元素的id为xx

,逗号,代表谁和谁

空格,代表所有的后代标签

>大于号,代表所有的儿子标签,不包括孙子标签


2.3 CSS选择器的属性筛选
属性筛选

区别:xpath中带@,css中不带@

属性中带空格怎么筛选?


区别:xpath中class带空格直接写空格,css中用.点代替

包含某些字符的属性怎么筛选?

以某些字符开头的属性怎么筛选?


三、js定位
console里面执行javascript代码,操作dom对象。

每个载入浏览器的 HTML 文档都会成为 Document 对象。Document 对象使我们可以从脚本中对 HTML 页面中的所有元素进行访问。


通过id获取
document.getElementById(“id”)
通过name获取
document.getElementsByName(“Name”) 返回的是list
通过标签名选取元素
document.getElementsByTagName(“tag”)
通过CLASS类选取元素
document.getElementsByClassName(“class”)
兼容性:IE8及其以下版本的浏览器未实现getElementsByClassName方法
通过CSS选择器选取元素
document.querySelectorAll(“css selector")
兼容性:IE8及其以下版本的浏览器只支持CSS2标准的选择器语法

 

【举例代码】

js = 'document.getElementById("helloId").click();'

driver.execute_script(js)


 

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值