BLOG
Enjoy when you can, and endure when you must.
NOV 25, 2013/Python
解析XML:更便捷的方式

在前面介绍的解析XML的方法都是利用Python标准库中的API来实现的,即ElementTreeDOM。不过貌似都觉得不是非常直观。因此,这里我们引入一个第三方库来更方便的完成需求 —— BeautifulSoup。

BeautifulSoup是一个功能强劲的用于解析HTML/XML的模块。还是以之前的例子切入:

<?xml version="1.0" encoding="utf-8"?>
<CSubmitState xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://tempuri.org/">
<State>0</State>
<MsgID>1311211532361125903</MsgID>
<MsgState>提交成功</MsgState>
<Reserve>0</Reserve>
</CSubmitState>

接下来就使用BeautifulSoup进行解析:

soup = BeautifulSoup(xml)

再然后,我们只需“一点到底”即可:

>>> soup.state.text
u'0'
>>> soup.msgid.text
u'1311211532361125903'

是不是非常方便呢。

这只是很简单的需求,因此在BeautifulSoup的功能上我们实际也只是接触了冰山一角而已。更多的探索可以参考其官方文档。

COMMENTS
LEAVE COMMNT