Automator et iPhoto:remplissage automatique d'album

albert.alarcon

Membre enregistré
19 Juillet 2014
5
0
Bonjour tout le monde,

j'ai une série de tâches répétitives à réaliser côté iPhoto et je me dis que je devrais pouvoir automatiser ça avec Automator car il semble être fait pour. Mais voilà, je débute sur Automator et je n'y arrive pas. J'expose mon problème:

j'ai une liste (texte) de noms de photos de ma bibliothèque que j'aimerais ranger dans un album, par exemple:

P1020221.JPG
P1020223.JPG
P1020227.JPG
P1020229.JPG
P1020248.JPG
.... (environ 200 photos)

à ranger dans un album existant "TOTO" dans iPhoto. La liste contient donc des noms de photos déjà importées dans ma bibliothèque mais rangées à différents endroits.

J'aimerais automatiser le processus suivant:
(1) Pour chaque nom de la liste, (2) rechercher l'élément dans ma bibliothèque iphoto puis (3) l'ajouter à l'album "TOTO"

Est-ce que quelqu'un voit les commandes à enchaîner dans Automator? Ou bien si c'est faisable directement dans iPhoto, je suis pas preneur!

Je dois faire ça pour quelques listes de plusieurs centaines de noms, donc le faire "à la mano" va me prendre toutes mes vacances!! :eek:

Merci d'avance pour votre aide.
 
Bonjour,

Un AppleScript ?

Chez moi les quelques lignes suivantes fonctionnent :

set theList to {"IMG_1506", "IMG_1507"}
tell application "iPhoto"
repeat with oneName in theList
try
add photo oneName to album "TOTO"
end try
end repeat
end tell

A toi de l'adapter avec le nom des fichiers que tu recherches, et le nom de l'album.
A coller dans "Editeur de Scripts"
ATTENTION : si tu n'as jamais pratiqué, il y a toujours un risque de mauvaise manip... Teste pas à pas si besoin, et n'oublie pas les sauvegarde !
Cordialement
Nicolas
 
Merci pour la réponse!
En effet ça marche, je connaissais pas applescript et c'est en effet tout simple. Par contre j'ai un petit souci supplémentaire que j'avais pas anticipé: plusieurs photos de ma bibliothèque portent le même nom. Du coup, le "add photo" ne choisit que la première entrée... il y moyen de choisir toutes ou de rajouter un 'if ...then ..." ?? ( par exemple si on boucle sur toutes les photos portant un meme nom, je pourrai discriminer la bonne car elle appartient à un autre album connu, TOTO2, par exemple)


Encore merci!
 
Bonsoir,

Essaie ceci :

Bloc de code:
set theList to {"IMG_1506", "IMG_1507"}
tell application "iPhoto"
	repeat with oneName in theList
		try
			set lesPhotos to (photos whose name is oneName)
			repeat with unePhoto in lesPhotos
				add unePhoto to album "TOTO"
			end repeat
		end try
	end repeat
end tell

Le script mettra toutes les photos dont le nom correspond dans l'album TOTO.
Tu devras ensuite faire le ménage dans TOTO manuellement.

Cordialement,
Nicolas
 
Merci encore Nicolas,

ta proposition fonctionne en effet, ça m'évite de rater certaines photos. J'ai testé ça sur la base de ton script pour éviter de faire le ménage à la main après, mais je ne comprends pas pourquoi ça ne marche pas...... Une idée?

--------

set theList to {"P1020306", "P1020307", "P1020308"}
tell application "iPhoto"
set testList to (photos in album "TOTO2")
repeat with oneName in theList
try
set lesPhotos to (photos whose name is oneName)
repeat with unePhoto in lesPhotos
if (testList contains unePhoto) then
add unePhoto to album "TOTO"
end if
end repeat
end try
end repeat
end tell

-----

Merci d'avance
 
Bonjour,

J'ai eu un peu de mal !

Je me suis fait aider...

Bloc de code:
set theList to {"IMG_1506", "IMG_1507", "test"}
tell application "iPhoto"
	set testList to (id of every photo in album "TOTO2")
	repeat with oneName in theList
		set lesIdPhotos to (id of every photo whose name is oneName)
		repeat with unId in lesIdPhotos
			if (testList contains unId) then
				add photo id unId to album "TOTO"
			end if
		end repeat
	end repeat
end tell

Cordialement,
Nicolas
 
ça marche niquel!

Merci infiniment Nicolas pour ton aide, je vais pouvoir profiter pleinement de mes vacances pendant que l'applescript fait le travail pour moi :up: