我有很长的文件路径,如:
D:%5CMedia%5CMusic%20Videos%5CAlexis%20Jordan%20-%20Good%20Girl%2Emkv
从那里获取文件名的最佳方法是什么,所以我最终得到:
Alexis Jordan - Good Girl
从那里我想把艺术家和标题分成不同的部分,但我可以管理:)
答案 0 :(得分:6)
首先,您需要使用urllib.unquote()
解码网址编码,然后使用os.path
module拆分文件名和扩展名:
import os
import urllib
path = urllib.unquote(path)
filename = os.path.splitext(os.path.basename(path))[0]
其中os.path.basename()
删除目录路径,os.path.splitext()
为您提供文件名和扩展名元组。
然后这会给你文件名:
>>> import os
>>> import urllib
>>> path = 'D:%5CMedia%5CMusic%20Videos%5CAlexis%20Jordan%20-%20Good%20Girl%2Emkv'
>>> path = urllib.unquote(path)
>>> path
'D:\\Media\\Music Videos\\Alexis Jordan - Good Girl.mkv'
>>> filename = os.path.splitext(os.path.basename(path))[0]
>>> filename
'Alexis Jordan - Good Girl'
答案 1 :(得分:2)
from urllib2 import unquote
from os.path import basename
p = 'D:%5CMedia%5CMusic%20Videos%5CAlexis%20Jordan%20-%20Good%20Girl%2Emkv'
fname = basename(unquote(p))