15、技巧之八: 如何确认WebDriver支持哪个版本的Xpath?【Selenium+Python3网页自动化总结】

Firefox目前支持XPath 1.0版本,目前没有计划支持XPath 2.0版本。

曾经想知道给定的WebDriver支持哪个版本的XPath吗?我们当然希望是2.0或3.0版本,但最可能的版本是1.0。正如Selenium维基所述,WebDriver在可能的情况下使用浏览器的原生XPath功能。当浏览器不支持XPath时(比如IE 6/7/8),Selenium会提供自己的实现,支持XPath 1.0版本。

可以用以下代码试出来,判断是否支持3.0独有的方式,或者2.0独有的方式:


 

from selenium.webdriver.common.by import Bydef get_xpath_version(context):try:context.find_element(By.XPATH, "/nobody[@attr=('A'||'')]")return "3.0"except Exception as e:try:context.find_element(By.XPATH, "/nobody[@attr=lower-case('A')]")return "2.0"except Exception as e:return "1.0"


 

# 示例用法# 假设 context 是 WebDriver 实例version = get_xpath_version(context)print(version)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/726370.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

window环境下使用k8s部署.net core项目

前提:已经部署镜像到Docker 在项目发布目录下新建.yaml文件,内容如下(以下仅举例出两种方式内容,可按需自由配置) --方式一(创建deployment 、服务、指定命名空间) # ------------------- 注意层级结构,…

如何下载网页中嵌套的PDF

项目场景: 网页中常有发布的PDF文件,只有浏览功能 问题描述 想下载的话有时候会截图,或者联系网站管理员 解决方案: 1.使用谷歌浏览器或者360浏览器极速模式,在当前页面按F12 2.网络(Network)…

OpenSSL 安全漏洞(CVE-2023-3817)

厂商补丁: 目前厂商已发布升级补丁以修复漏洞,补丁获取链接: https://www.openssl.org/news/secadv/20230731.txt OpenSSL安全建议[2023年7月31日] 检查DH q参数值花费过多时间(CVE-2023-3817) 严重程度:低 问题总结:DH键或参数过长可能导致检查速度很…

电脑远程桌面选项变成灰色没办法勾选怎么办?

有些人在使用Windows系统自带的远程桌面工具时,会发现系统属性远程桌面选项卡中勾选启用“允许远程连接到此计算机”。 导致此问题出现的原因主要是由于组策略或者注册表设置错误造成的。 修复远程桌面选项变灰的两种方法! 方法一:设置本地组…

从spark streaming与structured streaming看spark core与spark sql的区别

导读 Spark中针对流式数据处理的方案有: Spark StreamingStructured Streaming 本文通过对比spark streaming与structured streaming,来深入理解spark core与spark sql的区别。 Spark Streaming 基于微批(DStream) Spark Streaming是基于微批(Micro batc…

linux-rpm命令

rpm命令管理程序包:安装、升级、卸载、查询和校验 1、忽略依赖关系安装/卸载包 安装:rpm -Uvh 软件包名 --nodeps 卸载:rpm -e 软件包名 --nodes!!!!慎用!!&#xff01…

Qt之Gui的事件转换

QGuiApplication的实现类QGuiApplicationPrivate方法processWindowSystemEvent处理window系统事件 static void processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent *e);在QWindowSystemInterface的处理事件方法中会调用上面的processWindowSystemEv…

1.【Labview白话系列】Labview数组精讲

题主经过写文章一段时间的发现,许多同学对该软件的理解和编程能力是不太一样的,有些知识相对一些同学较为简单,但是有些同学提问就比较困难。那么针对这个问题,题主打算出一期说白话系列的专栏,在该栏目中用最通俗的大…

pycharm手动安装常用插件

下载插件 (1)下载地址:JetBrains Marketplace 这里以语言包为例子 2、中文语言包 进入pycharm中的设置,点击plugins,选从磁盘中安装插件

算法刷题day24:归并排序

目录 引言概念一、火柴排队二、归并排序三、逆序对的数量四、小朋友排队五、超级快速排序 引言 关于这个归并排序,考察的还是挺多的,在笔试面试中会问你,或者直接让你写一个归并排序,还有竞赛中有时也会考察,不过一般…

PG的JDBC对SQL中绑定变量个数的限制

瀚高数据库 目录 环境 症状 问题原因 解决方案 环境 系统平台:N/A 版本:N/A 症状 问题 有开发人员使用一条Insert values 语句,插入多行数据。例如:表A有88个字段,一条INSERT values …中包含500条数据。 报错…

六、矩阵问题

73、矩阵置零(中等) 题目描述 给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 示例 1: 输入:matrix [[1,1,1],[1,0,1],[1,1,1]] 输出&#xff1a…

应用案例 | Softing echocollect e网关助力汽车零部件制造商构建企业数据库,提升生产效率和质量

为了提高生产质量和效率,某知名汽车零部件制造商采用了Softing echocollect e多协议数据采集网关——从机器和设备中获取相关数据,并直接将数据存储在中央SQL数据库系统中用于分析处理,从而实现了持续监控和生产过程的改进。 一 背景 该企业…

【国家机关办公建筑 大型公共建筑的能耗监测、集中统一管理】安科瑞能耗监测系统整体解决方案

背景 为全面推进大型公建节能管理工作,需建立大型公建节能监管体系,逐步建立起全国联网的大型公建能耗监测平台,在大型公建安装分项计量装置,通过远程传输等手段及时采集分析能耗数据,实现对大型公建的实时动态监测、汇…

Qt应用软件【文件篇】Linux平台QFileSystemWatcher与QFile操作GPIO

文章目录 GPIO权限问题使用Root权限运行应用程序更改GPIO文件的权限使用udev规则自动设置权限监视GPIO与读写GPIO注意事项GPIO权限问题 在Linux系统中,通过sysfs接口操作GPIO时,经常会遇到权限问题,因为默认情况下,访问/sys/class/gpio目录及其文件需要root权限。这可能会…

Docker数据卷的挂载

目录 1 概念 2 常用命令 3 操作步骤(主要讲在创建容器时的挂载) 3.1 挂载在默认目录 3.2 挂载在自定义目录 4 附加内容(查看容器的挂载情况) 1 概念 数据卷(volume)是一个虚拟目录,是容器内目录与宿主机目录之间映射的桥梁。这样容器内…

go语言基础 -- json的序列化

json序列化 package main import("fmt""encoding/json" )type Monster struct{Name stringAge intSkill string }// 结构体序列化 func serialize_struct() {monster : Monster{Name : "niumo",Age : 500,Skill : "bajiaoshan",}// 这…

微服务day05-Gateway网关

Gateway网关 为了防止微服务能被任何身份的人访问,需要对访问微服务的人做身份认证和权限校验。网关的功能就是对访问用户进行身份认证和权限校验。网关具有3种功能: 身份验证和权限校验:网关作为微服务入口,需要校验用户是是否…

git 如何将多个提交点合并为一个提交点 commit

文章目录 核心命令详细使用模式总结示例 核心命令 git merge branch2 是将分支branch2的提交点合并到本地当前分支。 而在执行这条命令的时候,加一个选项--squash就表示在合并的时候将多个提交点合并为一个提交点。 git merge --squash branch2 先看squash单词的意…

[网络安全提高篇] 一二五.恶意软件分析之PE文件解析和利用Python获取样本时间戳及溯源

2024新的战场,继续奋斗。 “网络安全提高班”新的100篇文章即将开启,包括Web渗透、内网渗透、靶场搭建、CVE复现、攻击溯源、实战及CTF总结,它将更加聚焦,更加深入,也是作者的慢慢成长史。换专业确实挺难的,Web渗透也是块硬骨头,但我也试试,看看自己未来四年究竟能将它…