PythonでElementTreeを使用してXMLファイルを解析する。ファイルを解析し、「fqdm」の属性の値を取得しようとしたときに、私は(下)エラーが発生しますElementTree Pythonを使用したXMLの解析
<?xml version='1.0' encoding='utf-8'?>
<Device fqdm="DESKTOP-4OB3072">
<IP>192.168.203.1</IP>
<MAC>00:00:00:00:00:00</MAC>
</Device>
:ここ
はファイルです。
「xml.etree.ElementTree.ParseError:ドキュメント要素の後ジャンク:行2、列90」
ここでは、解析コードは、(それが変更されます、愚かなファイル処理を無視してください)です。
with open('received_file.xml', 'a+') as f:
while True:
data = conn.recv(BUFFER_SIZE)
print data
if not data:
f.close()
break
f.write(data)
f.close()
g = open('received_file.xml', 'r+')
tree = ET.parse(g)
root = tree.getroot()
print root
test = root.find('./Device').attrib['fqdm']
print test
sock.close()
これはそうではないようですが、私はXMLが有効であることを保証しました...他の投稿の多くは、ルート要素がないことを示唆しています。それがエラーを投げるものですか? –
'' print(root) ''を実行すると、 '' <0x7fa64ff63548> ''のような要素が表示されます。だから、私は '' Device''がルート要素だと思います。 – GLR
正解私はすでにそれをチェックしています。それはまだそのジャンクエラーを投げている。私は別の要素としてそれを置くことができるが、私はむしろそれが属性になるだろう! –