python项目练习3:万能的XML

1.目的

  如何用XML来表示多种数据,以及如何使用适合XML或SAX的简单API来处理XML文本。目标是通过一个描述各种网页和目录的XML文件生成一个完整的网站。

注:有关XML的描述参见http://www.w3school.com.cn/ ;有关SAX的更多信息参见http://www.saxproject.org

2.问题

  本项目要解决的常见问题就是解析(读取和处理)XML文件:因为使用XML几乎能表示任何数据,并且在解析的时候可以随意处理数据

3.实现

3.1验证python版本是否支持SAX语法分析器

    >>> from xml.sax import make_parser

    >>> parser = make_parser()

    执行后没有异常则可以使用 (较新的python版本都支持)

3.2用XML文件表示的简单网站(website.xml)

 1 <website>
 2   <page name="index" title="Home Page">
 3     <h1>Welcome to My Home Page</h1>
 4 
 5     <p>Hi, there. My name is Mr. Gumby, and this is my home page. Here
 6     are some of my interests;</p>
 7 
 8     <ul>
 9      <li><a href="interests/shouting.html">Shouting</a></li>
10      <li><a href="interests/sleeping.html">Sleeping</a></li>
11      <li><a href="interests/eating.html">Eating</a></li>
12     </ul>
13   </page>
14   <directory name="interests">
15     <page name="shouting" title="Shouting">
16       <h1>Mr Gumby's Shouting Page</h1>
17 
18       <p>...</p>
19     </page>
20     <page name="sleeping" title="Sleeping">
21       <h1>Mr Gumby's Sleeping Page</h1>
22 
23       <p>...</p>
24     </page>
25     <page name="eating" title="Eating">
26       <h1>Mr Gumby's Eating Page</h1>
27 
28       <p>...</p>
29     </page>
30   </directory>
31 </website>
website.xml

本次解析XML采用SAX的方法,包括编写一组时间处理程序,当解析器度XML文档时,就可以让它调用这些处理程序来完成解析
3.2.1创建简单的内容处理程序

原文地址:https://www.cnblogs.com/CoolRandy/p/3277878.html