Python Selenium XPath根据文本内容查找元素的方法


Posted in Python onDecember 07, 2020

问题现象

元素的属性中没有id、name;虽然有class,但比较大众化,且位置也不固定;例如:页码中的下一页;那该如何找到该元素?

<a class="paging">上一页</div>
<a class="paging">1</div>
<a class="paging">2</div>
<a class="paging">下一页</div>

解决办法

text()

text() 函数文本定位

page_next = driver.find_element(By.XPATH, '//a[text()="下一页")]')

contain()

contains 匹配一个属性值中包含的字符串 ? 模糊定位
通过元素文本内容模糊搜索来定位元素;

page_next = driver.find_element(By.XPATH, '//a[contains(text(), "下一页")]')
page_next = driver.find_element(By.XPATH, '//a[contains(string(), "下一页")]')

Python通过xpath查找元素通过selenium读取元素信息

#coding:utf-8
from selenium import webdriver
import time
url ='http://www.baidu.com'
driver = webdriver.Chrome()
driver.get(url)
time.sleep(1)
e=driver.find_element_by_xpath('//*[@id="lg"]/img')
print e
print e.text
print e.id
print e.tag_name
print type(e)
time.sleep(1)
driver.quit()

e.text 读取元素内容
e.tag_name 读取元素标签名

到此这篇关于Python Selenium XPath根据文本内容查找元素的方法的文章就介绍到这了,更多相关Python Selenium XPath容查找元素内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python计算最大优先级队列实例
Dec 18 Python
python的random模块及加权随机算法的python实现方法
Jan 04 Python
Python正确重载运算符的方法示例详解
Aug 27 Python
python机器学习之KNN分类算法
Aug 29 Python
基于Python在MacOS上安装robotframework-ride
Dec 28 Python
对python中的*args与**kwgs的含义与作用详解
Aug 28 Python
python自动生成model文件过程详解
Nov 02 Python
Python列表去重复项的N种方法(实例代码)
May 12 Python
Python基于pandas绘制散点图矩阵代码实例
Jun 04 Python
Keras中的两种模型:Sequential和Model用法
Jun 27 Python
如何基于matlab相机标定导出xml文件
Nov 02 Python
Python第三方库安装缓慢的解决方法
Feb 06 Python
Selenium关闭INFO:CONSOLE提示的解决
Dec 07 #Python
pyqt5实现井字棋的示例代码
Dec 07 #Python
Selenium环境变量配置(火狐浏览器)及验证实现
Dec 07 #Python
详解BeautifulSoup获取特定标签下内容的方法
Dec 07 #Python
使用BeautifulSoup4解析XML的方法小结
Dec 07 #Python
BeautifulSoup获取指定class样式的div的实现
Dec 07 #Python
用Python实现童年贪吃蛇小游戏功能的实例代码
Dec 07 #Python
You might like
phpstrom使用xdebug配置方法
2013/12/17 PHP
php上传图片存入数据库示例分享
2014/03/11 PHP
php关闭warning问题的解决方法
2016/05/17 PHP
用cssText批量修改样式
2009/08/29 Javascript
Mootools 1.2教程(3) 数组使用简介
2009/09/14 Javascript
jQuery live( type, fn ) 委派事件实现
2009/10/11 Javascript
基于jQuery的可以控制左右滚动及自动滚动效果的代码
2010/07/25 Javascript
使用jQuery管理选择结果
2015/01/20 Javascript
Vue.js每天必学之过滤器与自定义过滤器
2016/09/07 Javascript
微信小程序 setData的使用方法详解
2017/04/20 Javascript
关于vue-router的那些事儿
2018/05/23 Javascript
TypeScript 引用资源文件后提示找不到的异常处理技巧
2020/07/15 Javascript
VUE实时监听元素距离顶部高度的操作
2020/07/29 Javascript
Vue axios获取token临时令牌封装案例
2020/09/11 Javascript
通过vue.extend实现消息提示弹框的方法记录
2021/01/07 Vue.js
[01:14:55]EG vs Spirit Supermajor 败者组 BO3 第三场 6.4
2018/06/05 DOTA
[03:41]2018完美盛典-《Fight With Us》
2018/12/16 DOTA
spyder常用快捷键(分享)
2017/07/19 Python
python操作列表的函数使用代码详解
2017/12/28 Python
PyQt5 pyqt多线程操作入门
2018/05/05 Python
PyCharm+PySpark远程调试的环境配置的方法
2018/11/29 Python
Python 实现微信防撤回功能
2019/04/29 Python
详解Python下载图片并保存本地的两种方式
2019/05/15 Python
Pycharm+django2.2+python3.6+MySQL实现简单的考试报名系统
2019/09/05 Python
Keras load_model 导入错误的解决方式
2020/06/09 Python
法国时尚品牌乐都特瑞士站:La Redoute瑞士
2016/09/05 全球购物
法国高保真音响和家庭影院商店:Son Video
2019/04/26 全球购物
到底Java是如何传递参数的?是by value或by reference?
2012/07/13 面试题
如何在发生故障的节点上重新安装 SQL Server
2013/03/14 面试题
农田水利实习自我鉴定
2013/09/19 职场文书
医院护士专业个人的求职信
2013/12/09 职场文书
建议书怎么写
2014/03/12 职场文书
毕业论文评语大全
2014/04/29 职场文书
2015年音乐教研组工作总结
2015/07/22 职场文书
超市员工管理制度
2015/08/06 职场文书
思品教学工作总结
2015/08/10 职场文书