#!/usr/bin/env python # -*- coding: UTF-8 -*- import xml.sax.saxutils import mdparser def decode_from_koi(str): return str.decode("koi8-r").encode("utf-8") parser = mdparser.MakeDictParser() parser.parser_info['version']='0.1' parser.parser_info['dict_name']='Apresyan.koi' parser.parser_info['format']='apresyan' parser.start() description=decode_from_koi(parser.f.readline())+\ decode_from_koi(parser.f.readline()).rstrip() parser.begin() parser.set_dict_info('full_name', 'Новый Большой Англо-Русский Словарь под редакцией Ю.Д. Апресяна') parser.set_dict_info('lang_from', 'ENG') parser.set_dict_info('lang_to', 'RUS') parser.set_dict_info('description', xml.sax.saxutils.escape(description)) parser.info() for line in parser.f.readlines(): res=decode_from_koi(line) key, data=res.split(" ") print ''+xml.sax.saxutils.escape(key)+'\n'+\ xml.sax.saxutils.escape(data)+'' parser.end()