再生回数を設定する曲と最後に再生した日を設定するソングが必要です。これらは、last.fmからデータを取得するperlスクリプトから呼び出されます。残念ながら、最後にプレイした日付のスクリプトを呼び出すと、エラーメッセージsetItunesLastPlayed.scpt: execution error: iTunes got an error: A descriptor type mismatch occurred. (-10001)
が表示されます。AppleScript、iTunes、 'date'
私はこのようにそれを呼んでいる:
osascript /Users/gms8994/setItunesLastPlayed.scpt "<ARTIST>" "<TITLE>" "Wednesday, July 05, 2011 07:14:11 AM"
Iは、ゼロパディング日と時間なしで、私は、iTunesからの最後のプレーの価値を要求した場合、それが戻ってくるという通知をしなかったので、私は削除しようとしましたそれらは役に立たない。
ここに私のスクリプトです。
on run argv
tell application "iTunes"
set theArtist to (item 1 of argv)
set theTitle to (item 2 of argv)
set theLastPlay to (item 3 of argv)
set theLastPlay to date theLastPlay
set results to (every file track of playlist "Library" whose artist contains theArtist and name contains theTitle)
repeat with t in results
tell t
say theLastPlay
set played date of t to theLastPlay
end tell
end repeat
end tell
end run
誰でも私に修正点を教えてもらえますか?
エラーはかなり一般的です。あなたのプレイカウントスクリプトは動作しますか?スクリプトエディタやスクリプトデバッガからAppleScriptを実行しようとしましたが、どこが失敗したのか正確に見てきましたか? –
@Philip Reganプレイ数のスクリプトは正しく機能します。数字を渡すだけです。エディタでdateスクリプトを実行すると、ハードコードされた「文字列」( 'theLastPlayを「Wednesday、July 05、2011 07:14:11 AM」に設定しています)が正しく動作します。 –
私はここでこれを読む前にコメントを投稿しましたが、文字列がPerlからApplescriptに渡されたときに何らかの変換が行われているのだろうかと思います。 –