我在XML文件中有类似这样的详细信息<note><id>51</id><Name>Jani</Name><city>Frankfurt</city><IQ>Intelligent</IQ></note><note><id>71</id><Name>Peter</Name><city>Paris</city><IQ>Average</IQ></note><note><id>81</id><Name>Asho</Name><city>Paris</city><IQ>Intelligent</IQ></note>有了这些细节,我想实现一个搜索引擎,该引擎应使用户能够搜索'Intelligent'文件中的所有人员。请建议我在python中执行此操作的最佳方法。
2 回答
慕少森
TA贡献2019条经验 获得超9个赞
使用lxml和XPath:
from StringIO import StringIO
from lxml import etree
xml = """<root>
<note>
<id>51</id>
<Name>Jani</Name>
<city>Frankfurt</city>
<IQ>Intelligent</IQ>
</note>
<note>
<id>71</id>
<Name>Peter</Name>
<city>Paris</city>
<IQ>Average</IQ>
</note>
<note>
<id>81</id>
<Name>Asho</Name>
<city>Paris</city>
<IQ>Intelligent</IQ>
</note>
</root>"""
tree = etree.parse(StringIO.StringIO(xml))
for note in tree.xpath("//note[IQ='Intelligent']"):
print note.getchildren()[1].tag + "=" + note.getchildren()[1].text
打印:
Name=Jani
Name=Asho
添加回答
举报
0/150
提交
取消