点击此处浏览总目录

对象解析

默认情况下,lxml.etree使用标准解析器

创建一个解析器,在解析时删除标记之间的空文本
如果事先知道纯空白内容对数据没有意义,则可以减小树的大小并避免尾部文本悬空

from lxml import etree

parser = etree.XMLParser(remove_blank_text=True)
root = etree.XML("<root>  <a/>   <b>  </b>     </root>", parser)
print(etree.tostring(root))  #输出:b'<root><a/><b>  </b></root>',<br>标签中的空格没有被删除,它被当做了数据

for element in root.iter("*"):
    if element.text is not None and not element.text.strip():
        element.text = None
etree.tostring(root) #输出:b'<root><a/><b/></root>',<br>标签中的空格被删除

 

posted @ 2019-10-31 11:59  立业的博客  阅读(182)  评论(0编辑  收藏  举报