0

私は ElementTree を使用しており、タグと属性を取得できますが、要素間の実際のコンテンツは取得できません。

この XML から:

<tag_name attrib="1">I WANT THIS INFO HERE</tag_name>

ここに私のpythonコードがあります:

import urllib2
import xml.etree.ElementTree as ET
XML = urllib2.urlopen("http://URL/file.xml")
Tree = ET.parse(XML)

for node in Tree.getiterator():
    print node.tag, node.attrib

これにより、ほとんどの XML ファイルが出力され、「タグ」と「属性」が何であるかは理解できますが、「コンテンツ」を取得するにはどうすればよいですか? ElementTree のドキュメントを調べてみましたが、これはあまりにも基本的な質問だと思います。

4

2 に答える 2

2

.textメソッドは、必要なテキスト値を提供する必要があります。

for node in Tree.getiterator():
    print node.tag, node.attrib, node.text
于 2013-06-06T06:45:32.330 に答える
0

XPath を試しましたか?

非常に簡単で強力な構文を使用して、タグからコンテンツを抽出するためのライブラリが多数あります。

ここに例があります:

import XmlXPathSelector
xs = XmlXPathSelector(text="<tags>your xml</tags>")
print xs.select("//tag_name[@attrib='1']/text()").extract()
于 2013-06-06T06:42:41.163 に答える