Bonjour,
J’ ai une base de données LO qui me permet de gérer les photos. Jusqu’ à présent, tout fonctionnait sans problème. J’ ai voulu passer à la version Xubuntu 22 mais j’ ai vite abandonné suite aux nombreux problèmes rencontrés avec cette nouvelle version. Donc retour à la 20.04.5.
Par contre, plus moyen d’ importer les données exif d’ une photo.
Voici le message d’ erreur.
Erreur d' execution BASIC.
Une exception s' est produite:
Type: com.sun.star.uno.RuntimeException
Message: Error during invoking function fntscl in module file:///home/elfouster/.config
/libreoffice/4/user/Scripts/python/slcfch.py(<class'FileNotFoundError'>:"exiftool" is not found, on path or as absolute
path File"/usr/lib/libreoffice/program/pythonscripts.py", line 915, in invoke
ret = self.func(*args)
File "/home/elfouster/.config/Libreoffice/4/user/Scripts/python/slcfxh.py", line 39, in fntslc
with ExifTool() as e:
File "/home/elfouster/.local/lib/python3.8/site-packages/exiftool/exiftool.py" ,line 280, in_init_
self.executable = executable or constants.DEFAULT_EXECUTABLE
File "/home/elfouster/.local/lib/python3.8/site-packages/exiftool/exiftool.py" ,line 354, in executable
raise FileNotFoundError(f'"(new_executable)" is not found, on path or as absolute path')).
D’ après ce message, il semblerai que la macro python n’ arrive pas à enregistrer le chemin de la photo sélectionnée pour le traitement des données exif?
Est-ce bien le problème rencontré?
Pour une meilleure compréhension, je vous joins le début du script:
#!/usr/bin/env python3
from exiftool import *
from os import chdir
from datetime import datetime
from fractions import Fraction
fchslc = ' '; chmcmppht = ' '; marque = ' '
def fntslc(event = None):
ctx = XSCRIPTCONTEXT.getComponentContext()
create = ctx.ServiceManager.createInstance
dsr = create("com.sun.star.ui.dialogs.OfficeFilePicker")
dsr.setDisplayDirectory("file:///mnt/El_Casot/Yvon/Phototeque1/A_Trier/")
dsr.execute()
fchslc = dsr.Files[0]
# Chemin complet du fichier
bls = '/'
pstbls = fchslc.rfind(bls,0,10)
chmcmppht = fchslc[pstbls:]
# Chemin du fichier
xbls = chmcmppht.count(bls)
i = 0
while i <= xbls:
pstbls1 = chmcmppht.rfind(bls)
i = i + 1
chmpht = chmcmppht[:pstbls1]
# Nom de la photo
bls2 = '.'
pstbls2 = chmcmppht.rfind(bls2)
nmpht = chmcmppht[pstbls1 + 1:pstbls2]
# Récupération des données exif
with ExifTool() as e:
Cordialement