2017-06-19 6 views
1

私はこのようなコードでも形成されXMLがあります。ラインになることを出力でlxmlとPythonで未解決のエンティティにアクセスするには?

import lxml.etree as ET 
parser = ET.XMLParser(resolve_entities=False) 
tree = ET.parse(inCfgFileName, parser) 
.... 
outFile = open(outCfgFileName, "w") 
...... 
e = tree.findall('fxp-connector[@name="streaming"]') 
..... 
tree.write(outFile) 

::私はそれを解析しています

<fxp-connector name="streaming" host="&fxvmnsrv.host;" port="&fxvmnsrv.port;" mode="INITIATOR"> 
     <message type="1" .../> 
     .... 
    </fxp-connector> 
    ..... 

&fxvmnsrv.host;&fxvmnsrv.port;<fxp-connector name="streaming" host="" port="" mode="INITIATOR"> 

...

print e[0]<message .../>タグ01を印刷しますこれらのエンティティリファレンスへのアクセス方法を教えてください。私はいくつかのことを試してみましたが、運これまでのところ。

+0

をoutfileをとは何か、してみてくださいでした何、私はコードのサンプルで質問を更新し、いくつかのコード –

+0

ドミトリーをご提示ください –

答えて

0

これらは、即ち、右の前に<fxp-connector>と同じレベルに、ルートに挿入されます。

for i in range(20): 
print i, root[i] 

は生成します。

9 &fxvmnsrv.host; 
10 &fxvmnsrv.port; 
11 <Element fxp-connector at 0xffffffff7b7386c8> #this is the <fxp-connector tag> 
関連する問題