Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python xpath表达式,仅获取动态内容节点的文本内容_Python_Html_Xpath - Fatal编程技术网

Python xpath表达式,仅获取动态内容节点的文本内容

Python xpath表达式,仅获取动态内容节点的文本内容,python,html,xpath,Python,Html,Xpath,我试图从下面的HTML代码中捕获没有子元素的内容: <div class="num"> <del>14,490</del> 13,490 </div> 这在本例中效果很好,但问题是div的内容可能会有所不同,有时它不包含子元素 我使用的是Python,可以在编码级别处理这个问题,但我很好奇这是否只能通过xpath来完成。您只需获取text(): 演示(使用): 如果没有del标记,这也会起作用: <div class="num"

我试图从下面的HTML代码中捕获没有子元素的
内容:

<div class="num">
   <del>14,490</del>
   13,490
</div>
这在本例中效果很好,但问题是div的内容可能会有所不同,有时它不包含子元素


我使用的是Python,可以在编码级别处理这个问题,但我很好奇这是否只能通过xpath来完成。

您只需获取
text()

演示(使用):

如果没有
del
标记,这也会起作用:

<div class="num">
   13,490
</div>

13,490

你们真的不需要
孩子::
。哎呀,你们说得对,伙计们,太复杂了。谢谢,谢谢大家!只是想用同样的方法回答我自己的帖子。刚刚完成测试,工作正常。谢谢你抽时间。
//div[@class="num"]/text()
$ xmllint index.html --xpath '//div[@class="num"]/node()[not(self::del)]'
13,490
$ xmllint index.html --xpath '//div[@class="num"]/text()'
13,490
<div class="num">
   13,490
</div>