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调用shell的方法
Nov 20 Python
用Python实现一个简单的能够发送带附件的邮件程序的教程
Apr 08 Python
python集合类型用法分析
Apr 08 Python
Django中的CACHE_BACKEND参数和站点级Cache设置
Jul 23 Python
Python常用算法学习基础教程
Apr 13 Python
pandas数值计算与排序方法
Apr 12 Python
Python实现的redis分布式锁功能示例
May 29 Python
Python离线安装PIL 模块的方法
Jan 08 Python
python函数的作用域及关键字详解
Aug 20 Python
termux中matplotlib无法显示中文问题的解决方法
Jan 11 Python
python 利用panda 实现列联表(交叉表)
Feb 06 Python
Python中的pprint模块
Nov 27 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
深入理解用mysql_fetch_row()以数组的形式返回查询结果
2013/06/05 PHP
Drupal7 form表单二次开发要点与实例
2014/03/02 PHP
一款简单实用的php操作mysql数据库类
2014/12/08 PHP
修改WordPress中文章编辑器的样式的方法详解
2015/12/15 PHP
php提交表单时保留多个空格及换行的文本样式的方法
2017/06/20 PHP
ThinkPHP防止重复提交表单的方法实例分析
2018/05/10 PHP
thinkPHP框架通过Redis实现增删改查操作的方法详解
2019/05/13 PHP
JavaScript静态的动态
2006/09/18 Javascript
js获取GridView中行数据的两种方法 分享
2013/07/13 Javascript
jQuery EasyUI tree 使用拖拽时遇到的错误小结
2016/10/10 Javascript
微信小程序 开发之快递查询功能的实现
2017/01/09 Javascript
AngularJS中$http使用的简单介绍
2017/03/17 Javascript
js实现倒计时关键代码
2017/05/05 Javascript
BootStrap 动态表单效果
2017/06/02 Javascript
ionic环境配置及问题详解
2017/06/27 Javascript
JavaSctit 利用FileReader和滤镜上传图片预览功能
2017/09/05 Javascript
解决vue A对象赋值给B对象,修改B属性会影响到A的问题
2018/09/25 Javascript
python paramiko实现ssh远程访问的方法
2013/12/03 Python
Python中不同进制互相转换(二进制、八进制、十进制和十六进制)
2015/04/05 Python
python判断windows系统是32位还是64位的方法
2015/05/11 Python
python的pdb调试命令的命令整理及实例
2017/07/12 Python
tensorflow使用神经网络实现mnist分类
2018/09/08 Python
pytorch .detach() .detach_() 和 .data用于切断反向传播的实现
2019/12/27 Python
python GUI库图形界面开发之PyQt5切换按钮控件QPushButton详细使用方法与实例
2020/02/28 Python
Python面向对象程序设计之静态方法、类方法、属性方法原理与用法分析
2020/03/23 Python
Python函数递归调用实现原理实例解析
2020/08/11 Python
浅谈css3中calc在less编译时被计算的解决办法
2017/12/04 HTML / CSS
Java程序员常见面试题
2015/07/16 面试题
两则小学生的自我评价分享
2013/11/14 职场文书
大专生的学习自我评价
2013/12/04 职场文书
店长岗位职责
2015/02/11 职场文书
PySwarms(Python粒子群优化工具包)的使用:GlobalBestPSO例子解析
2021/04/05 Python
Go使用协程交替打印字符
2021/04/29 Golang
详解MySQL的Seconds_Behind_Master
2021/05/18 MySQL
Django REST framework 限流功能的使用
2021/06/24 Python
国际最新研究在陨石中发现DNA主要成分 或由陨石带来地球
2022/04/29 数码科技