Question

Je suis en train d'écrire une fonction Python qui, étant donné le chemin vers un fichier de document, renvoie le nombre de mots dans ce document. Cela est assez facile à faire avec les fichiers txt, et il existe des outils qui me permettent de pirater un soutien pour quelques formats de documents plus complexes ensemble, mais je veux une solution vraiment complète.

En regardant l'interface de script py-uno de OpenOffice.org et la liste des formats pris en charge, il semble idéal pour charger les documents dans un sans tête OOo et appeler sa fonction mot-comte. Cependant, je ne peux pas trouver des tutoriels py-uno ou exemple de code qui vont au-delà de la génération de documents de base, et même les extraits de code que j'ai trouvé sont à jour d'une demi-décennie et ne fonctionnent plus.

Que ce soit à l'aide OOo et Uno ou non, comment puis-je obtenir fiables mot-compte pour les documents de différents formats?

Était-ce utile?

La solution

charger les documents dans un sans tête OOo   et appeler son nombre de mots fonction

PyODConverter est un récent (11-2009) script pour utiliser OOo pour convertir plusieurs fichiers les types. En regardant le script, il a le chargement de base de tous les documents pris en charge OOo.

Voici comment vous commencez à OOo en tant que service sans tête:

soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard

Il vous suffit d'écrire un petit programme d'amorçage qui appelle OOo sur la ligne de commande, exécute votre script, puis ferme OOo.


Autres conseils

Cela pourrait être pas l'option pour vous, mais dans le cas où il est - vous pouvez télécharger des documents à Google Docs, puis exporter au format .txt. Google fait habituellement très bon travail pour la conversion.

Vous trouverez ici les API pertinentes: http: //code.google.com/intl/pl/apis/documents/docs/1.0/developers_guide_python.html

Jetez un oeil à la connexion, le téléchargement et les articles d'exportation.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top