使用以段落分隔的列表从iTunes播放列表中删除歌曲

问题描述:

我可以根据每段中具有不同标题的文本文件从播放列表中获取歌曲,但是我可以使用其他文本文件删除播放列表'SongList'中的任何歌曲其标题与我的'SongList'文本文件中的某个标题相匹配?使用以段落分隔的列表从iTunes播放列表中删除歌曲

知道如何读取文本文件

set mySampleText to read file "Macintosh SSD:path:to:file.txt" 

而如何才能获得它的

set paras to paragraphs of mySampleText 

段但我不能找到一种方法来删除与谁分享任何一个名称的任何曲目mySampleText行。

任何人都可以帮忙吗?下面

感谢

塔迪

脚本找到相同的标题曲目在你的文本文件和删除。 小心,删除操作没有任何反向!

set FText to choose file "select your text file" -- select text file 

set mySampleText to read FText -- read txt file 
set Paras to paragraphs of mySampleText 

tell application "iTunes" 
tell playlist "My preferred playlist" 
repeat with aSong in Paras -- loop to each title 
    set myTracks to (every track whose name is aSong) 
    if (count of myTracks) > 0 then -- only if found 
     set myTrack to item 1 of myTracks -- take first item found 
     Delete myTrack 
    end if 
end repeat 
end tell 
end tell 

当您有多个标题相同的曲目时,您可能必须管理该情况。上面的脚本只需要找到第一个轨道。

我强烈建议您在推出期间用“play”替换“删除”! (为了安全)。

最后但并非最不重要的一点是,如果您的标题中包含特殊字符,请确保您的txt文件已正确编码。

+0

Pbell,它只是从播放列表中删除它们吗?我不想完全从iTunes中删除它们。 –

+0

我已经更新了脚本添加“告诉播放列表”...和“结束告诉”。这样做,曲目只能从指定的播放列表中删除。如果没有此块,则会从主库中删除曲目(然后从所有播放列表中删除)。 – pbell

+0

这真的很有帮助。谢谢,Pbell!我忘了你也可以'告诉'播放列表! –