Activer l’accès au module UNO pour les scripts Python tournant sous Windows

La librairie UNO permet de contrôler directement des documents OpenOffice 4 depuis du code Python.

Toutefois son installation nécessite le respect de certaines étapes.

Prerequis :

  • Python 2.7
  • OpenOffice 4

Edition des chemins d’accès d’environnement pour les scripts tournant sous OpenOffice Apache version 4 + :

Dans l’éditeur python trouvé à l’adresse ‘C:\\Program Files (x86)\\OpenOffice 4\\program’, lancez les commandes suivantes et récupérez-en le résultat:

import os
print os.environ['PATH']

 

Résultat :
[”, ‘C:\\Program Files (x86)\\OpenOffice 4\\program\\python-core-2.7.6\\lib’, ‘C:\\Program Files (x86)\\OpenOffice 4\\program\\python-core-2.7.6\\lib\\site-packages’, ‘C:\\Program Files (x86)\\OpenOffice 4\\program’, ‘C:\\Windows\\SYSTEM32\\python27.zip’, ‘C:\\Program Files (x86)\\OpenOffice 4\\program\\python-core-2.7.6\\DLLs’, ‘C:\\Program Files (x86)\\OpenOffice 4\\program\\python-core-2.7.6\\lib\\plat-win’, ‘C:\\Program Files (x86)\\OpenOffice 4\\program\\python-core-2.7.6\\lib\\lib-tk’, ‘C:\\Program Files (x86)\\OpenOffice 4\\program\\python-core-2.7.6\\bin’, ‘C:\\Program Files (x86)\\OpenOffice 4\\program\\python-core-2.7.6′]6’]

Cette dernière commande permet d’obtenir tous les chemins d’accès d’environnement PYTHON activés sous OpenOffice 4. Maintenant il va nous falloir intégrer ces valeurs sous WINDOWS de sorte que tous les scripts PYTHON sous la plateforme y accèdent.
C’est important car si les scripts PYTHON tournant sous OpenOffice 4 ont accès à la librairie UNO, ce n’est pas le cas pour les autres.

Le chemin d’accès principal obtenu est :

‘C:\\Program Files (x86)\\OpenOffice 4\\program’

Dans Windows accédez au panneau des propriétés systèmes

Créez la variable d’environnement PYTHONPATH, puis entrez-y le chemin d’accès OpenOffice 4 ci-dessous (celui qui pointe vers la librairie UNO) :
‘C:\\Program Files (x86)\\OpenOffice 4\\program’

Lancez l’éditeur python de votre choix et exécutez votre script nécessitant la librairie UNO

ça marche parfaitement de mon côté !  😀 

Mes scripts dansent littéralement de joie sur mon écran  😛 

Note :

Ne pas utiliser la fonction import uno, cela générera une exception:

File “C:\Program Files (x86)\OpenOffice 4\program\uno.py”, line 31, in <module>
import pyuno
ImportError: DLL load failed: Le module spécifié est introuvable.
Process terminated with an exit code of 1

En effet, le module uno.py livré avec OpenOffice 4 tentera un import de pyuno.py (version texte) alors que ce fichier se présente sous la forme pyuno.pyd (dll)

Il convient pour contourner l’exception de travailler directement avec uno sans fonction import, en utilisant directement les méthodes du module.

Ouverture :

LibreOffice est un fork d’OpenOffice donc le principe est le même avec cette suite.

La raison pour laquelle j’ai évité LibreOffice tient en l’absence du core Python 2.7 nécessaire pour certaines librairies non encore adaptées au core 3.3 présent dans LibreOffice 5.

J’utilise une GUI importante wxPython qui n’a pas encore été adaptée au core 3.3 (A venir avec le fork Phoenix)

Phoenix project :

En principe en voie de finalisation (donc bientôt recommencer ce tuto en suivant les mêmes étapes et en installant python 3.3 et libreoffice 5)