Xpath 如何在lxml中获取连接的子文本节点

Xpath 如何在lxml中获取连接的子文本节点,xpath,lxml,lxml.html,Xpath,Lxml,Lxml.html,这是HTML示例: <div class="wpb_text_column"> <div class="wpb_wrapper"> <p style="text-align: center;"><a href="http://somepage1.com">First text part </a></p> <p style="text-align: center;"><a hr

这是
HTML
示例:

<div class="wpb_text_column">
    <div class="wpb_wrapper">
      <p style="text-align: center;"><a href="http://somepage1.com">First text part </a></p>
      <p style="text-align: center;"><a href="http://somepage2.com">Second text part </a></p>
      <p style="text-align: center;"><a href="http://somepage3.com">Third text part</a></p>
    </div> 
</div>
<div class="wpb_text_column">
    <div class="wpb_wrapper">
      <p style="text-align: center;"><a href="http://somepage4.com">First text part </a></p>
      <p style="text-align: center;"><a href="http://somepage5.com">Second text part</a></p>
    </div> 
</div>
我可以得到文本值列表

['First text part ', 'Second text part ', 'Third text part', 'First text part ', 'Second text part']
但是,我想从每个
div
中获取所有值,就像单个字符串一样

['First text part Second text part Third text part', 'First text part Second text part']

似乎是,但
lxml
不支持
/normalize-space()
语法:

lxml.etree.xpathevaleror:表达式无效


因此,如何在
lxml
中获得所需的输出?

用以下代码解决:

[" ".join(string.text_content().split()) for string in tree.xpath('//div[@class="wpb_text_column"]/div[@class="wpb_wrapper"]')]

用以下代码解决:

[" ".join(string.text_content().split()) for string in tree.xpath('//div[@class="wpb_text_column"]/div[@class="wpb_wrapper"]')]

lxml解析器中似乎有一个选项可以在解析时忽略空白:使用
tree=html.fromstring(html\u sample,parser=etree.XMLParser(remove\u blank\u text=True))
给出一个错误
lxml.etree.XMLSyntaxError:lxml解析器中似乎有一个选项在解析时忽略空白:使用
tree=html.fromstring(html\u sample,parser=etree.XMLParser(remove\u blank\u text=True))
给出一个错误
lxml.etree.XMLSyntaxError:文档末尾的额外内容
[" ".join(string.text_content().split()) for string in tree.xpath('//div[@class="wpb_text_column"]/div[@class="wpb_wrapper"]')]