m3uプレイリストをディレクトリにエクスポートしてプレイリストに表示する

m3uプレイリストをディレクトリにエクスポートしてプレイリストに表示する

方法がありますrsync m3uプレイリスト宛先ディレクトリを入力します。

プレイリストの順序と一致するようにファイルをソートするようにリストを処理し、出力に番号を付ける方法は?

たとえば、m3u:

/music/song-yellow.mp3
/music/song-red.mp3
/music/song-blue.mp3

/ rsyncプレイリストの内容がコピーされ、ファイル名が次のように変更されます。

/dest-path/01-song-yellow.mp3
/dest-path/02-song-red.mp3
/dest-path/03-song-blue.mp3

これにより、ミックステープのプレイリストを作成して人々にコピーできます。

どんな提案にも感謝します。

ベストアンサー1

次のようにしてみてください。

#!/usr/bin/python

FILE = '/home/my-home/my-playlist.m3u'
DIR = '/some-target-directory'

import os.path, shutil, sys

for i, s in enumerate(open(FILE)):
    s = s.rstrip()
    try:
        shutil.copy(s, os.path.join(DIR, '%03d-%s' % (i+1, os.path.basename(s))))
    except IOError, e:
        sys.stderr.write('warning: %s\n' % e)

# End of file.

もちろん必要に応じて設定してくださいFILEDIRPythonを過度に使用したことをお詫び申し上げます。シェルが特別な意味を与えることを好むすべての文字をエスケープする必要がないのに役立ちます。

スクリプトはI / Oエラーのため失敗しません。警告のみを印刷します。その他には完全な検査はありません(ご覧のように)。また、M3Uのコメントも除外されません。ただし、NULファイルシステムレベルの特殊文字であるsとスラッシュを除いて、ユーザーが入力したすべての文字をコピーします。

おすすめ記事