修正下载时错乱文件名小工具

import glob,base64,binascii,re,locale,string,os
def utf8codechg(ch):
    v = chr(string.atoi(ch.group()[1:3],16))+chr(string.atoi(ch.group()[4:6],16))+chr(string.atoi(ch.group()[7:9],16))    
    return unicode(v,"utf-8")
def codechg(ch):
    v = chr(string.atoi(ch.group()[1:3],16))
    return v

p_utf8 = re.compile(r"%[0-9A-F][0-9A-F]%[0-9A-F][0-9A-F]%[0-9A-F][0-9A-F]")
p_asc = re.compile(r"%[0-9A-F][0-9A-F]")

for f in glob.glob("*"):
    print f,"===>",
    res = p_utf8.sub(utf8codechg, f)
    res = p_asc.sub(codechg, res)
    print res
    if f==res:continue
    os.rename(f,res)

你可能感兴趣的:(修正下载时错乱文件名小工具)