Re: [AS] Obtenir un chemin POSIX d'une photo de la bibliot…

Page principale
Supprimer ce message
Répondre à ce message
Auteur: Yvan KOENIG
Date:  
À: Liste AppleScript francophone
Sujet: Re: [AS] Obtenir un chemin POSIX d'une photo de la bibliothèque "Photos"


Il serait peut-être judicieux d'essayer de travailler avec un autre outil.

-- début du script
----------------------------------------------------------------
use AppleScript version "2.5"
use framework "Foundation"
use script "Metadata Lib" version "2.0.0"
# disponible à : <http://www.macosxautomation.com/applescript/apps/Script_Libs.html#Metadata_Lib>
use scripting additions
----------------------------------------------------------------


tell application "Photos"
    set images_selectionnees to selection
    if images_selectionnees is {} then
        display dialog "Échec ! Aucune sélection."
    else
        set nom_fichier to filename of item 1 of images_selectionnees
        set chemin to do shell script "find $HOME -wholename \"*.photoslibrary/Masters*/" & nom_fichier & "\""
        --> "/Users/**********/Pictures/Photos Library.photoslibrary/Masters/2014/08/07/20140807-102118/DSC_0165.NEF"
        fetch metadata for item chemin
    end if
end tell
-- fin du script


La library Metadata Lib retourne:

{kMDItemFSIsExtensionHidden:false, kMDItemFSCreationDate:date "mardi 18 février 2014 à 12:30:12", kMDItemFSFinderFlags:0, kMDItemFSHasCustomIcon:false, kMDItemFSSize:10887695, kMDItemFSIsStationery:false, kMDItemFSLabel:0, kMDItemFSContentChangeDate:date "mardi 18 février 2014 à 12:30:12", kMDItemFSTypeCode:0, kMDItemFSOwnerGroupID:20, kMDItemFSInvisible:false, kMDItemFSName:"DSC_0165.NEF", kMDItemFSCreatorCode:0, kMDItemFSOwnerUserID:501, kMDItemFSNodeCount:10887695}

C'est peut-être suffisant pour ce que vous tentez de faire.

Pour autant que je me souvienne, Photos ne dispose pas d'une fonction permettant de modifier le nom d'un fichier.
De ce fait, bidouiller un nom serait suicidaire car ça ne serait pas répercuté dans la base de données projects.db.
Ce qui pourrait s'envisager c'est d'utiliser le chemin d'accès récupéré pour créer une copie du fichier en dehors de la hiérarchie de Photos.
Renommer le duplicata
Effectuer les modifications souhaitées
Rétablir le nom originel
Recopier le fichier "modifié" dans la hiérarchie de Photos.

En tout état de cause, je ne comprends pas pourquoi une espace dans le nom pose problème car comme vous pouvez le vérifier il y en a toujours une dans le chemin d'accès.

Comme je suis curieux, j'ai testé exiftool sur un fichier placé sur le bureau, fichier dont le nom contient une espace.
-- début du script
set chemin to POSIX path of ((path to desktop as text) & "P 1010002.JPG")
--do shell script "/usr/local/bin/exiftool -a -u -g1 " & (quoted form of chemin)
do shell script "/usr/local/bin/exiftool -T -datetimeoriginal" & space & (quoted form of chemin)
--> "1999:01:01 00:00:27"
-- fin du script
J'ai poussé le vice jusqu'à renommer le fichier en "P 101000œ2.JPG" et ça n'a rien perturbé.

Yvan KOENIG running High Sierra 10.13.6 in French (VALLAURIS, France) dimanche 30 juin 2019 16:32:45


_______________________________________________
Applescript_fr mailing list
Applescript_fr@???
http://listes.patpro.net/mailman/listinfo/applescript_fr