代码实现:
from xml.sax.handler import ContentHandler
from xml.sax import parse
import os
class PageMaker(ContentHandler):
passthrough = False #判断是否为新文件
directory = '' #当前目录
def startElement(self, name, attrs):
if name == 'page':
self.passthrough = True #设置为新文件
self.out = open(self.directory + attrs['name'] + '.html', 'w') #打开或者创建新文件
self.out.write('<html>\n<head>\n')
self.out.write('<title>%s</title>\n' % attrs['title']) #设置标题
self.out.write('</head>\n<body>\n')
elif name == 'directory': #判断是否为目录
if not os.path.exists(attrs['name']): #判断此目录是否存在
os.mkdir(attrs['name']) #创建目录
self.directory = attr