xml ファイルのシーケンスの下にある名前要素を抽出しようとしています。説明のために、サンプル xml の先頭に貼り付けました。これで、01 Interview_been メンターシップで成功したテキストを取得して、ファイルに書き込みたいと思います。XMLには複数のシーケンスタグがあり、それを調べて抽出する方法を見つけようとしています。私は xml.etree と xml.dom.minidom の使い方を理解しようとしましたが、私の脳をそれに巻き付けることができないようです。シーケンス タグからすべての id 値を取得できましたが、name 要素からは取得できませんでした。xml の前に自分のコードを貼り付けています。
from xml.etree import ElementTree
file = open("xmldump.txt", "r")
filedata = file.read()
file.close()
with open('test.xml', 'rt') as f:
tree = ElementTree.parse(f)
for node in tree.iter('name'):
sequenceid = node.attrib.get('name')
print ' %s' % (sequenceid)
newLine = sequenceid + "\n"
file = open("xmldump.txt", "w")
file.write(newLine)
file.close()
XML は次のとおりです。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE xmeml>
<xmeml version="5">
<bin>
<uuid>0F5D72FA-54E4-4DE8-81D7-CC33F5C43836</uuid>
<updatebehavior>add</updatebehavior>
<name>Logged</name>
<children>
<sequence id="01 Interview_been successful through mentorship">
<uuid>12FB944D-83EA-4527-9A54-2130A42E3A06</uuid>
<updatebehavior>add</updatebehavior>
<name>01 Interview_been successful through mentorship</name>
<duration>1195</duration>
<rate>
<ntsc>TRUE</ntsc>
<timebase>24</timebase>
</rate>
<timecode>