Python Selenium XPath根据文本内容查找元素的方法
作者:放大的EZ 发布时间:2022-02-18 12:55:16
标签:Python,Selenium,XPath
问题现象
元素的属性中没有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 读取元素标签名
来源:https://lumeng.blog.csdn.net/article/details/106027218


猜你喜欢
- 直接执行这两个命令即可:sudo update-alternatives --install /usr/bin/python python
- 关于这个问题的解答,网络上有成千上万个版本,当然,出现问题的诱因不同,解决的途径也不同,所以我不排除其他解决此类问题的办法,但是这些办法都没
- 如下所示:python3:img_path = ' 'im = cv2.imdecode(np.fromfile
- 1.循环# 1.for...in循环,依次把list或tuple中的每个元素迭代出来studentNames = ["Willar
- LCase:转成小写 UCase:转成大写 下面是ASP中的代码,可以直接演示效果的。 代码如下:<% dim s
- 本文实例讲述了php中对象引用和复制。分享给大家供大家参考,具体如下:引用$tv2 = $tv1;或者$tv2 = &$tv1;以上
- 就javascript来说,iframe创建的框架和frameset创建的框架一样。这里有个关系图,做个笔记。图片源自《javascript
- 两个文章,放在一块了。第二个比较强。====================================================
- 本文实例讲述了php字符串函数 str类常见用法。分享给大家供大家参考,具体如下:str_split(string, leg);//将一个字
- 前言这篇文章将为大家介绍:GoFrame 错误处理的常用方法&错误码的使用。如何自定义错误对象、如何忽略部分堆栈信息、如何自定义错误
- 本文实例讲述了Python使用pymongo模块操作MongoDB的方法。分享给大家供大家参考,具体如下:通过pymongo实现python
- 本文实例讲述了python中MySQLdb模块用法。分享给大家供大家参考。具体用法分析如下:MySQLdb其实有点像php或asp中连接数据
- OS库提供通用的,基本的操作系统交互功能。-OS库是Python标准库,包含几百个函数-常用路径操作,进程管理,环境参数等几类-路径操作:
- 前言正则表达式是文本处理领域中的一个强大的工具,它可以让文本处理的能力呈指数级的提升,如果一款文本编辑器不支持正则表达式,那么它就算不上是一
- Windows 下从源码编译 PaddlePaddle1.环境准备Windows 10 专业版 (64bit)Python 版本 Pytho
- 首先看一下这三个函数:rtrim() ltrim() trim();rtrim()定义以及用法: rtrim() 函数移除字符串右侧的空白字
- 本文实例讲述了python实现通过队列完成进程间的多任务功能。分享给大家供大家参考,具体如下:1.通过队列完成进程间的多任务import m
- 显示索引和隐式索引import pandas as pddf = pd.DataFrame({'姓名':['张三
- Python中的最大整数Python中可以通过sys模块来得到int的最大值. python2中使用的方法是import sysmax =
- 代码如下: 代码如下:<% '用ASP获取远程目标网页指定内容On Error Resume Next Server.Scri