我的目标是使用lxml解析
HTML,它支持XPath和CSS选择器.
我可以将我的模型属性绑定到CSS或XPath,但我不确定哪一个是最好的,例如更改HTML布局时更简洁,表达更简单,提取速度更快.
在这种情况下你会选择什么?
解决方法
你觉得哪个更舒服?大多数人倾向于更容易找到CSS选择器,如果其他人会维护你的工作,你应该考虑到这一点.这样做的一个原因可能是,对
XML命名空间的担忧较少,这是许多错误的根源. CSS选择器往往比同等的XPath更紧凑,但只有你可以决定是否相关因素.我会注意到,jquery的选择语言是在CSS选择器上建模而不是在XPath上建模并不是偶然的.
另一方面,XPath是一种更具表现力的语言,适用于一般的DOM操作.例如,没有相当于“父”或“祖先”轴的CSS选择器,也没有办法在XPath中直接寻址等同于“text()”的文本节点.相比之下,我想不出任何可以在CSS选择器中表达但不在XPath中表达的DOM路径,尽管E [foo~ =“warning”]和E [lang | =“en”]在XPath中显然非常棘手.
什么CSS选择器确实XPath不是伪类,但如果你正在进行服务器端DOM操作,这些对你来说可能没用.
原文地址:https://www.jb51.cc/css/662594.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。