2012-06-06 136 views
1

我有在俄羅斯我藝術家標籤的MP3。所有英文元數據通常打印,但俄語顯示爲問號。我該如何強制模塊使用unicode或utf8編碼?蟒蛇ID3標籤的Unicode

蟒蛇

from ID3 import * 
import glob 
import re 
import os 
for name in glob.glob('*.mp3'): 
    id3info = ID3(name) 
    print id3info 

我使用這個庫:http://id3-py.sourceforge.net/

+0

既然沒有所謂的ID3標準庫,你可以使用多種不同的第三方庫,你必須告訴我們,這是一個之前,我們可以提供幫助。 – abarnert

+0

我的壞,我包括我在用現在 – Blainer

+0

OK,答案是,不使用該模塊...見下文。 – abarnert

回答

3

你不能做的Unicode中的ID3v1,並且該模塊不僅會的ID3v1(它甚至不正確地做到這一點)。

如果你想明確地標記您的文件有的只是ID3v1的應用程序,那麼你真的需要弄清楚如何欺騙該應用程序進入閱讀俄文字符。很可能,那是不可能的。但是,如果沒有,那麼你可以誘騙你的ID3v1庫輸出字符串,通過手動預處理字符串來欺騙你的應用程序。

不過,如果你想標記您的文件進行任何現代應用程序,只需使用誘變劑,趔趄,PyTagLib,還是其他什麼東西,這不是一個十年過時。他們將會在ID3v2標籤所有出口有效的Unicode,做最好的用的ID3v1標籤(這通常不是很大,但通常並不重要)。