Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >高效xpath选择器的最佳实践

高效xpath选择器的最佳实践
EN

Stack Overflow用户
提问于 2013-06-19 06:32:22
回答 1查看 1.2K关注 0票数 2

是否有一些关于如何在xslt中创建更有效的xpath选择器的通用技巧或最佳实践?

例如,假设您有一个只包含第一级部分的DocBook XML文档,如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<chapter>
  <section><info><title>my first section</title></info> ... </section>
  <section userlevel="expert"><info><title>my second section</title></info> ... </section>
  <section><info><title>my third section</title></info> ... </section>
</chapter>

我认为几乎在所有情况下,像//d:section(1)这样的选择器比/d:chapter/d:section(2)这样的选择器更糟糕。我是否可以概括一下这一点,并说选择器越有选择性,它就越快?

对于另一个例子:如果您想要第二个区段元素,您可以从所有区段的子树中提取它,或者使用//d:section[@userlevel]直接选择它。这个选择器使用的属性更有选择性,但会更快吗?

使用XPath时应该做什么(或避免)的经验规则?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-06-19 07:01:45

我认为您需要查看特定的XSLT、XPath或XQuery处理器,甚至是特定的处理器和特定的树模型,然后运行测试。例如,//foo是如此常见,以至于它可能在实现中被优化。

当我在输入示例中使用XQuery //section运行了10次Saxon9.5JavaHE时,我得到了“平均执行时间: 1.007739ms”,而对于/chapter/section,则得到了“平均执行时间: 1.443799ms”。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17194051

复制
相关文章
高效团队的gitlab flow最佳实践
当前git是大部分开发团队的首选版本管理工具,一个好的流程规范可以让大家有效地合作,像流水线一样有条不紊地进行团队协作。
JadePeng
2021/02/04
4.2K0
高效团队的gitlab flow最佳实践
scrapy选择器xpath
Scrapy提取数据有自己的一套机制,它们被称作选择器(seletors),通过特定的Xpath或者css表达式来"选择"html文件中的某个部分。
py3study
2018/08/02
6030
使用XPath与CSS选择器相结合的高效CSS页面解析方法
在现代的Web开发中,页面解析是一个非常重要的任务。开发人员需要经常从HTML文档中提取特定的数据或元素,并由此进行处理。为了实现这一目标,开发人员通常使用CSS选择器或XPath来定位并提取所需的元素。然而,单独使用CSS选择器或XPath可能会导致一些效率问题。本文将介绍一种高效的方法,即使用XPath与选择器相结合,以提高CSS页面解析的效率。
小白学大数据
2023/08/01
3820
DevOps 中高效测试基础架构的最佳实践
今天我主要讲四个内容,我做内容规划的时候其实内容偏多,对于一些通用的内容可以讲得快一点,干货部分会讲得仔细一点。
DevOps时代
2019/05/23
1K0
DevOps 中高效测试基础架构的最佳实践
DevOps 中高效测试基础架构的最佳实践
今天我主要讲四个内容,我做内容规划的时候其实内容偏多,对于一些通用的内容可以讲得快一点,干货部分会讲得仔细一点。
Criss@陈磊
2019/08/02
4440
左耳朵耗子:打造高效团队的最佳实践
作者 | 陈皓 策划 | TGO 鲲鹏会 2021 年 5 月 21-22 日,极客邦旗下科技领导者高端社区 TGO 鲲鹏会主办的 GTLC 全球技术领导力峰会全球总站 在上海成功举办,吸引全国各地 600 多位 CTO、技术 VP 等科技领导者参与。会上,知名技术博主、MegaEase 创始人陈皓分享了主题为《打造高效团队最佳实践》的演讲分享,结合自身经验分享打造高效团队的必要性以及方法论。我们将演讲内容整理如下,以飨读者。 我是陈皓,曾经是亚马逊、阿里巴巴的首席架构师,专注于云原生、高并发。这是我第一次
深度学习与Python
2023/04/01
4930
左耳朵耗子:打造高效团队的最佳实践
5个编写高效Makefile文件的最佳实践
在编写Makefile文件之前,我们需要明确我们的目标是什么。我们需要知道我们需要构建哪些文件,以及它们之间的依赖关系。为了确定目标,我们需要考虑以下问题:
小万哥
2023/05/20
3060
5个编写高效Makefile文件的最佳实践
常用xpath选择器和css选择器总结
我们知道选择包含某一特定属性的节点,可以使用例如//tbody/tr[@class]来选择。那么不含某属性的节点如何用xpath取得呢?
用户1214487
2019/05/25
1.5K0
(转) 11 个高效的同行代码评审最佳实践
原文发表于2011 年 5 月 04 日发布,由IBM DeveloperWorks翻译成中文。
Criss@陈磊
2019/10/09
1.6K0
(转) 11 个高效的同行代码评审最佳实践
[译]高效的TensorFlow 2.0:应用最佳实践以及有什么变化
在最近的一篇文章中,我们提到,TensorFlow 2.0经过重新设计,重点关注开发人员的工作效率、简单性和易用性。
云水木石
2019/07/02
8580
架构师分享 高效团队的gitlab flow最佳实践
当前git是大部分开发团队的首选版本管理工具,一个好的流程规范可以让大家有效地合作,像流水线一样有条不紊地进行团队协作。
IT大咖说
2021/02/24
4.3K0
架构师分享 高效团队的gitlab flow最佳实践
编写高效的CSS选择器
CSS规范并没有明确浏览器如何去实现样式系统,仅仅是说明了它们必须这样做。有鉴于此,不同的样式系统引擎可能会拥有完全不同的表现和行为,特别是 Gecko 与 WebKit, 这两个引擎都是开源项目,实现了类似的算法,具有极其相近的优缺点。因此下面介绍的小技巧对于真实世界的 Web 文档将会十分有用。
空空云
2018/09/27
6750
Scrapy框架| 选择器-Xpath和CSS的那些事
这次接着上一篇文章来讲Scrapy框架,这次讲的是Scrapy框架里面提供的两种数据提取机制Xpath和CSS,其实除了这两种,我们还可以借助第三方库来实现数据的提取,例如:BeautifulSoup(这个在我的爬虫系列文章中有写过)和lxml(Xml解析库),Scrapy选择器是基于lxml库之上的,所以很多地方都是和lxml相似的。
Python进击者
2019/06/21
1.3K0
xpath 和css选择器 python爬虫必备技能
一 xpath 1定位 xml html导航 2 包含标准库 3 xpath是一个w3c的标准---语法一致 xpath术语 节点 子节点、父节点、上节点、 xpath语法 xpath语法 x
98k
2018/04/11
8400
xpath 和css选择器 python爬虫必备技能
【GIT最佳实践】--GIT最佳实践
提交消息规范是在使用Git进行版本控制时的一项最佳实践,它有助于组织和标准化提交消息,使团队更容易理解和管理项目的变更历史。以下是关于Git提交消息规范的最佳实践:
喵叔
2023/10/09
3900
如何高效微调大模型?技术原理与最佳实践揭秘!
随着,ChatGPT 迅速爆火,引发了大模型的时代变革。然而对于普通大众来说,进行大模型的预训练或者全量微调遥不可及。由此,催生了各种参数高效微调技术,让科研人员或者普通开发者有机会尝试微调大模型。
OpenMMLab 官方账号
2023/10/10
1.6K0
如何高效微调大模型?技术原理与最佳实践揭秘!
Selenium自动化测试技巧
与以前瀑布式开发模式不同,现在软件测试人员具有使用自动化工具执行测试用例套件的优势,而以前,测试人员习惯于通过测试脚本执行来完成测试。
FunTester
2020/06/24
1.6K0
【转】高效运维最佳实践(01):七字诀,不再憋屈的运维
专栏介绍 《高效运维最佳实践》是InfoQ在2015年推出的精品专栏,由触控科技运维总监萧田国撰写,InfoQ总编辑崔康策划。 前言 做运维的那么多,快乐的能有几个? 我们那么努力,为什么总感觉过得那么憋屈、苦闷?做的事情那么多,为什么业务部门、直接领导和公司貌似都那么不领情?怎么做才能自己更加开心些? 本专栏的主线实际是一个运维人员的十年成长史,从菜鸟到运维总监。但不是基础技术教学,也不会在运维技术的某一方面过深涉及。更多的是应用技巧、实践经验及案例剖析。专栏中的系列文章,包含作者在运维各个细分领域的技
小小科
2018/05/03
9270
【转】高效运维最佳实践(01):七字诀,不再憋屈的运维
云迁移的最佳实践
云迁移是将数据和应用程序从现场IT基础设施迁移到云平台的过程,仍然是许多企业的首要任务。事实上根据研究和预测,到2020年,全球将有83%的企业工作负载在云平台中,而AWS和Microsoft Azure等公共云平台将继续主导市场。
静一
2019/12/06
8750
Spring AOP的最佳实践
本文为《Spring揭秘》第11章的阅读笔记,该书对Spring的基本原理进行了深度剖析,是我目前看过的最好的Spring中文资料。 一、异常处理 1、Java异常处理 Java中的异常层次体系如下图
三哥
2018/06/15
1.2K0

相似问题

编写xpath选择器的最佳实践

12

Xpath最佳实践

13

XPath命名空间通配符最佳实践

31

高效多时间序列分析的最佳实践

10

最佳实践: XNA中高效的sprite绘图

32
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文