首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在lxml.html中使用XPath

在lxml.html中使用XPath
EN

Stack Overflow用户
提问于 2012-10-08 22:17:13
回答 1查看 185关注 0票数 0

我没怎么用过XPath,所以请耐心点。我有一个HTML文件,其中包含两个表单,每个表单都包含一些输入/选择元素。

代码语言:javascript
复制
In [146]: len(doc.xpath('//input | //select'))
Out[146]: 14

In [147]: len(doc.xpath('//form'))
Out[147]: 2

有没有一种方法可以遍历表单并找到相应的输入/选择元素?此时,它会返回所有元素两次。

代码语言:javascript
复制
In [149]: for e in doc.xpath('//form'):
     ...:     print len(e.xpath('//input | //select'))
     ...:     
14
14
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-10-08 22:33:45

我不知道python中的XPath集成,但我认为你可以尝试一下:

代码语言:javascript
复制
e.xpath('.//input | .//select')

在你的for循环中。

e是附加到整个文档的节点。当您对其执行XPath时,您应该停留在此上下文中。当您使用//时,您处于文档上下文中。

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

https://stackoverflow.com/questions/12783587

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档