Errore di AppleScript durante il tentativo di eliminare album vuoti in Photos.app

0

Il problema

Sto cercando di eliminare un mucchio di album vuoti usando AppleScript. Ho verificato che sto "ottenendo" / "raccogliendo" / qualunque sia il termine appropriato: preferisci gli album corretti.

Ma quando provo a cancellare questi album vuoti, ottengo un errore in questo modo:

error "Can’t make item 1 of every album of 
folder id \"wFSS4tONSgyq4NWwnUthVA\" of folder id \"6Aod8RunTj+3Nsz2jmM1xA\" 
into type integer." number -1700 from item 1 of every album of folder id
"wFSS4tONSgyq4NWwnUthVA" of folder id "6Aod8RunTj+3Nsz2jmM1xA" to integer

Lo stesso errore si verifica se provo a eliminare gli album vuoti mentre eseguo il ciclo dei miei album e controllo se ognuno è vuoto, o se raccolgo gli album vuoti in un elenco e utilizzo un secondo ciclo per eliminare gli album in la lista.

Che sta succedendo? La documentazione afferma chiaramente che "solo album e cartelle possono essere cancellati".

Il mio codice

repeat with project_folder in PROJECTS_SUBFOLDERS
    --log "PROJECT FOLDER: " & project_folder's name & ¬
    --"\nID: " & project_folder's id

    if (count of project_folder's albums) is greater than 0 then
        --log "\n"
        --log project_folder's name as text
        --log project_folder's id as text
        --log ""

        repeat with abm in project_folder's albums
            --log "Class: " & abm's class as text
            --log "Album: " & abm's name as text
            --log "ID: " & abm's id as text

            if (count of abm's media items) is equal to 0 then
                --log (count of abm's media items)
                log abm's name as text
                set the end of empty_albums to abm
            end if
        end repeat
    end if
end repeat


log "now, to delete..."

repeat with abm in empty_albums
    log "Deleting " & abm's name as text
    delete album abm  
    -- (I have also tried 'delete abm' without success)
end repeat

return

Questo codice è il metodo a 2-loop, ma lo stesso accade se provo a eliminare gli album vuoti senza prima averli inseriti in un elenco.

Qualcuno può dirmi cosa sta succedendo?!

Qualcuno può dirmi come far funzionare questo script con successo?

    
posta Zearin 06.03.2017 - 13:53
fonte

1 risposta

1

La soluzione è quella di cambiare:

delete abm
-- or delete album abm

A questo:

delete album id (abm's id)

Nulla nella documentazione della biblioteca mi avrebbe portato a questa risposta. Stavo solo provando qualcosa per disperazione.

    
risposta data 06.03.2017 - 14:33
fonte

Leggi altre domande sui tag