ItunesMusicLibrary.xmlから16進数のPersistentID文字列を読み込み、上位32ビットを表す2つのintを取得し、iTunesスクリプトでこれら2つの整数を使用したい。さまざまなスクリプト・インターフェースを介してアクセス可能なitunes永続的なid - 音楽ライブラリxmlバージョンとiTunesの16進数バージョン
iTunesミュージックlibrary.xmlは、64ビットキー、永続IDを含んでいるよう
残念ながら、ItunesMusicLibrary.xmlで永続的なID列は、iTunesでだ同じ永続IDではないようです。たとえば、
<key>Persistent ID</key><string>0F1610959DA92DAB</string>.
WindowsのCOMインターフェイスを使用してスクリプトを使用してPersistentIDを取得することもできます。私はiTunesに戻って、これらの2つの数値を養う場合たとえば、
iTunes.ITObjectPersistentIDHigh(track) -> 253104277
iTunes.ITObjectPersistentIDLow(track) -> -1649857109
は、私は私の問題は、ハイとローの整数
にXMLライブラリからの16進文字列を翻訳されiTunes.LibraryPlaylist.Tracks.ItemByPersistentID(253104277,-1649857109).Name
正しいトラックを取得します例えば
は、パイソン
int('0F1610959DA92DAB'[:8], 16) -> 253104277
int('0F1610959DA92DAB'[8:], 16) -> 2645110187
に最初は第二ではない、正確です。私が2つの値をiTunesに戻すと、うまくいきません。他のトラックを使用すると、両方の番号が間違っていることがあります。
何が起こっているのか、それを修正する方法はありますか?
私はTyp eError: 'str'はバッファインタフェースをサポートしていません – foosion
おそらく私がPython 3.2にいるため – foosion
これは2.7ではなく3.2で動作します。 – foosion