XPath定位——基于Google Chrome和Firefox
来源:互联网 发布:java常用包及类 编辑:程序博客网 时间:2024/06/14 06:10
滴~ 今日打卡!
这几天各种加班、出差,没空写博客。But~ 自己立的flag,困着也得补完是不?!趁着今晚早点下班,补两篇博客,总结一下这几天利用碎片时间所学!
之前博主学了用搭Python+selenium环境,并写脚本用selenium的webdriver打开和关闭浏览器啦,接下来就是学怎样定位页面元素。
比较主流的方式似乎是XPath和CSS选择器。今天先学习XPath,先学入门级,比较傻瓜式的。
首先,学习XPath之前先了解selenium webdriver进行元素定位,提供了八种常用方式
find_element_by_name() 使用name属性定位
find_element_by_id() 使用元素id定位
find_element_by_tagName() 使用元素的标签名称定位
find_element_by_className() 使用元素的css样式表所引用的伪类名称定位
find_element_by_linkText() 一般用于定位超文本链接,使用超文本链接上的文字信息定位
find_element_by_partialLinkText() 上一个方法的扩展,通过对超文本链接上的部分文字信息进行匹配定位
find_element_by_xpath() 使用元素xpath进行定位
find_element_by_cssSelector css选择器
着重说一下最后两个方法,就是上面说到的XPath和CSS选择器方式。写了几个脚本之后,博主感觉XPath这个方式还是挺强大的,而且也容易上手,用这种方式几乎可以定位到页面上的任意元素。But,查阅资料,了解它的实现原理后,也知道了它的一个缺点,效率低。因为使用这种方式进行定位,webdriver会将整个页面的所有元素进行扫描来找到我们所需的元素,所以当脚本中大量使用XPath方式定位,会大大降低脚本的执行速度。
So~ cssSelector来啦,这种方式跟XPath类似,但执行速度比XPath快。
有了大致了解之后,怎么用呢?
from selenium import webdriverdriver = webdriver.Chrome()...driver.find_element_by_xpath(' 元素的XPath表达式')
- XPath定位——基于Google Chrome和Firefox
- google chrome xpath 调试
- 为Chrome和firefox地址栏添加自动 https Google 搜索
- IE、火狐(Firefox)和谷歌(Google Chrome)浏览器差异
- 查看google chrome和firefox上的cookie
- 用firefox和google chrome进入四川大学课程中心
- 通过chrome利用xpath定位页面元素
- 基于《Selenium 2自动化测试实战》的学习笔记(5)—— XPath 定位
- CSS和xpath定位demo
- Google Chrome 导入IE和Firefox的收藏夹和浏览记录
- 浏览器——google chrome
- 收藏一篇文章:为Chrome和firefox地址栏添加自动 https Google 搜索
- Firefox和Chrome会因为修改hosts文件内的google站点而崩溃……
- Chrome和Firefox常用插件
- selenium调用firefox和chrome
- Xpath ——定位XML元素的语言 + DTD验证
- 学习Appium 元素定位java篇—XPath
- XPath定位
- Centos配置yum源
- redis详解-(12)TwemProxy
- 支持向量机(一)
- 周中训练笔记16
- Java Jedis远程连接redis异常解决思路,异常描述:Could not get a resource from the pool && connect timed out
- XPath定位——基于Google Chrome和Firefox
- Navi.Soft31.WebMVC框架(含示例地址)
- python大作战之不可变序列(元组tuple)
- K
- POJ 3111
- LeetCode刷题(30)
- android:theme="Theme.Wallpaper.NoTitleBar.Fullscreen"相关问题
- 在ROS下,创建range_layer,加入超声波传感器。
- laravel 发送邮件