如何获取此html片段中a的href值?
我需要根据I标记中的类获取它
<!--
<a href="https://link.com" target="_blank"><i class="foobar"></i> </a>
-->
我试过了,但没有结果
foo_links = tree.xpath('//a[i/@class="foobar"]')
您应该注意,目标元素是HTML注释。您不能简单地获取
请尝试以下代码:
import re
foo_links = tree.xpath('//comment()') # get list of all comments on page
for link in foo_links:
if '<i class="foobar">' in link.text:
href = re.search('\w+://\w+.\w+', link.text).group(0) # get href value from required comment
break
P、 您可能需要使用更复杂的正则表达式来匹配链接URL
您的代码确实对我有用-它返回<代码>
hrefs = tree.xpath('//a[i/@class="foobar"]/@href')
您还可以首先找到
hrefs = tree.xpath('//a/i[@class="foobar"]/../@href')
# ^ ^ ^
# | | obtain the 'href'
# | |
# | get the parent of the <i>
# |
# find all <i class="foobar"> contained in an <a>.
如果所有这些都不起作用,您可能需要验证文档的结构是否正确。
请注意,XPath不会窥视内部注释
hrefs = [href for comment in tree.xpath('//comment()')
# find all comments
for href in lxml.html.fromstring(comment.text)
# parse content of comment as a new HTML file
.xpath('//a[i/@class="foobar"]/@href')
# read those hrefs.
]
如果我有 如果我想选择包含td的a,我该怎么做? 我测试过: 但是我要获得td节点,我要获得a节点。如何使用XPath实现这一点?
我有一个XML文档,它包含一个非常复杂(对我来说)的结构,没有换行符。它有许多具有类似结构的元素: 我需要得到节点值的文本,这是节点成员的孩子也有孩子的名字与特定的文本(在这种情况下virtual_size)。也有可能存在几个类似的节点。我可以用[1]etc吗? 这让我知道了节点的名称,但是如何达到“值”节点呢?
问题内容: 我有一个xform文档 我想使用xpath和jdom从xform中选择数据元素 似乎工作正常,并选择title元素,但 不选择模型元素。我想这与名称空间有关。 问题答案: 一些东西。您 确实 应该使用JDOM 2.0.x …(最新版本2.0.5)。2.0.x版本中的XPath API远远优于JDOM 1.x中的XPath API:请参阅https://github.com/hunter
element ui 树状表格选择父节点子节点全选,子节点不全选父节点半选? el-table没有相关示例,需要手动实现好像?![上传中...]()
我是Xpath的新手。 假设我有一个xml目录可以将商品导入电子商店: 目录的第一部分是商品类别列表,第二部分是商品列表。每种商品都有一个<代码> 从上面的代码中,我需要得到这样一个好的描述:类别:夹克;标签:D 标签、颜色和尺寸可直接从<代码> 所以我的目标是选择