本文介绍了使用lxml时,是否可以不使用名称空间属性来呈现XML?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用lxml生成一些XML,并像这样生成节点:

I am generating some XML with lxml and getting nodes generated like this:

<QBXML xmlns:py="http://codespeak.net/lxml/objectify/pytype" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
py:pytype="TREE">

和:

<MaxReturned py:pytype="int">

这些自定义属性正在杀死Quickbooks的解析器.我可以在没有自定义内容的情况下使LXML呈现吗?

These custom attributes are killing Quickbooks' parser. Can I get LXML to render without the custom stuff?

推荐答案

如下所示:

objectify.deannotate(root, xsi_nil=True)
etree.cleanup_namespaces(root)

或者,如果使用lxml> = 2.3.2(感谢@Pedru):

or, if using lxml >= 2.3.2 (thanks @Pedru):

objectify.deannotate(root, cleanup_namespaces=True, xsi_nil=True)

这篇关于使用lxml时,是否可以不使用名称空间属性来呈现XML?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-22 04:23