#!/usr/bin/python # output xml format: # # zzzlllfile.frag # ... # import codecs import os import pickle def dump_pickles(out, dirname, filename, path): with open(os.path.join(dirname, filename), "r", encoding="utf-8") as f: data = pickle.load(f) with codecs.open( data["current_page_name"] + ".frag", mode="w", encoding="utf-8" ) as fragment_file: fragment_file.write(data["body"]) out.write(' \n' % path) out.write(" %s.frag\n" % data["current_page_name"]) if data["prev"] is not None: out.write( ' %s\n' % (os.path.normpath(os.path.join(path, data["prev"]["link"])), data["prev"]["title"]) ) if data["next"] is not None: out.write( ' %s\n' % (os.path.normpath(os.path.join(path, data["next"]["link"])), data["next"]["title"]) ) out.write(" \n") if data["next"] is not None: next_path = os.path.normpath(os.path.join(path, data["next"]["link"])) next_filename = os.path.basename(next_path) + ".fpickle" dump_pickles(out, dirname, next_filename, next_path) import sys sys.stdout.write("\n") dump_pickles(sys.stdout, os.path.dirname(sys.argv[1]), os.path.basename(sys.argv[1]), "/") sys.stdout.write("")