Accueil » Convertisseur OpenOffice » OOTranslator
Vues
  • État: publié

OOTranslator

Document Actions
Le module permettant de transformer un document OO.O en texte ou XML.

Cliquez ici pour obtenir le fichier

Taille 1.3 kB - Type du fichier text/x-python

Contenu du fichier

#!/usr/bin/env python
#-*- coding: utf_8 -*-
################################
# Module: OOTranslator.py
# Author: C.B.
# Date:   28/02/2007
# Version: 1.0
# Python version : 2.4.3
################################
# Comment :
# avec la version 2.5 de Python on peut désormais remplacer la magouille
# ci-desssous (try-try-except-finaly-if) par try-except-finaly.
################################
import zipfile, re


re_suppr_xml = re.compile("<[^>]*?>", re.DOTALL | re.MULTILINE) # pour supprimer le balisage XML.

def convertir_OO(nomfichier, texte_seul = True):
	"""Convertit un document OpenOffice.Org en XML ou en texte."""
	donnees = ""
	try:
		fz = None
		try:
			fz = zipfile.ZipFile(nomfichier, "r")
			donnees = fz.read("content.xml")
		except IOError:
			print "Fichier inexistant\n"
	finally:
		if fz:
			fz.close()
	if fz:
		if texte_seul:
			donnees = " ".join(re_suppr_xml.sub(" ", donnees).split())
	return donnees



if __name__ == "__main__":
	"""Point d'entrée en exécution"""
	import sys
	if len(sys.argv) > 1:
		for nomdoc in sys.argv[1:]:
			print 'Texte de', nomdoc, ':'
			print convertir_OO(nomdoc)
			print 'XML de', nomdoc, ':'
			print convertir_OO(nomdoc, texte_seul = False)
	else:
		print 'Donnez des noms de documents OO.o pour les lire aux formats texte et XML.'