私はetreeオブジェクトと呼ばprojectxml持っている:私は、ディスクに保存する必要がetree xmlオブジェクトを保存するには? etreeオブジェクトの問題lxmlの読み込みを保存
projetxml type <type 'lxml.etree._Element'>
をので、私は要素ツリーに変換します
savedxml=et.ElementTree(projetxml)
savedxml.write('/home/simon/Vysis.xml')
他のスクリプトを持っていましたVysis.xmlと同じ種類の他の二つのファイルをロードするために:
vysis=et.parse('/home/simon/Vysis.xml')
asi=et.parse('/home/simon/ASI.xml')
psi=et.parse('/home/simon/PSI.xml')
を今ASI、PSIおよびVysis社lxmlのオブジェクトは、例えばタイプのものである:
<lxml.etree._ElementTree object at 0xa7eaf8c>
私の問題は、私はこれ以上行うことができません:エラーのため
R=et.Element('DataBase')
R.append(asi)
R.append(psi)
R.append(vysis)
:
R.append(asi)
File "lxml.etree.pyx", line 697, in lxml.etree._Element.append (src/lxml /lxml.etree.c:35471)
TypeError: Argument 'element' has incorrect type (expected lxml.etree._Element, got lxml.etree._ElementTree)
私は私は2つのソリューションを持っていると仮定します。最初の方法は、etree.Elementをetree.ElementTreeに変換し、それを「直接」保存することを避けることができますが、どうすればよいか分かりません。 2番目の解決策は、etree.ElementTreeをetree.Element型に逆変換することです。xmlオブジェクトを保存/ロードするにはクリーンなソリューションが必要ですか?
多分これはあなたが http://stackoverflow.com/questions/8274438/saving-an-lxml-etree-elementtree-object – cptPH