有没有为人类设计的Python XML解析器?

Geo*_*Geo 24 python xml user-friendly

我喜欢Python,但我不想仅仅为了从元素中获取属性而编写10行.也许这只是我,但minidom不是那样mini.为了使用它解析一些东西,我必须编写的代码看起来很像Java代码.

还有更多的东西user-friendly吗?有重载运算符的东西,它将元素映射到对象?

我希望能够访问:


<root>
<node value="30">text</node>
</root>
Run Code Online (Sandbox Code Playgroud)

像这样的事情:


obj = parse(xml_string)
print obj.node.value
Run Code Online (Sandbox Code Playgroud)

并没有使用getChildren或其他类似的方法.

Eti*_*nne 21

你应该看一下ElementTree.它并没有完全符合你的要求,但它比minidom要好得多.如果我没记错的话,从python 2.4开始,它包含在标准库中.为了更快速地使用cElementTree.要获得更多速度(以及更多功能),您可以使用lxml(根据您的需求/方法检查objectify API).

我应该补充一点,BeautifulSoup部分地做你想要的.还有阿马拉有这种做法.