python - Xpath 为空节点值保留一个位置

标签 python xpath

我尝试从中提取值:

<tr>
     <td>a</td>
     <td>a</td>
     <td>b</td>
     <td></td>
     <td>b</td> 
</tr>

//td/text() 返回:

a
a
b
b

如何获得以下输出?

a
a
b

b

最佳答案

如果您使用lxml.html - 循环找到的td元素并获取text_content():

from lxml.html import fromstring

data = """
<tr>
     <td>a</td>
     <td>a</td>
     <td>b</td>
     <td></td>
     <td>b</td>
</tr>"""

tree = fromstring(data)

for td in tree.xpath(".//td"):
    print(td.text_content())

打印:

a
a
b

b

关于python - Xpath 为空节点值保留一个位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35188361/

相关文章:

python - 将带有空格字符的参数传递到 argparse

python - python中 Selenium 代码中xpath中的语法错误

ruby - 使用 XPath 获取属性的 XML 属性值

xml - 如何在不带结尾分隔符的情况下在XQuery中使用分隔符连接字符串?

python - 使用函数更改参数值?

python - 将 cache() 和 count() 应用于 Databricks 中的 Spark Dataframe 非常慢 [pyspark]

python - 用Python编写csv文件: unwanted commas appear

python - 每次迭代存储不同变量的循环?

xml - 省略不包含特定子节点的节点的父节点

xpath - 通过XPath的PMD PrimaryPrefix问题