Есть ли удобный способ сопоставить файл uri с os.path?

Подсистема, на которую я не могу контролировать, настаивает на предоставлении путей файловой системы в виде uri. Есть ли модуль / функция python, который может преобразовать этот путь в соответствующую форму, ожидаемую файловой системой, независимо от платформы?

Модуль urlparse предоставляет путь от URI:

import os, urlparse p = urlparse.urlparse('file://C:/test/doc.txt') finalPath = os.path.abspath(os.path.join(p.netloc, p.path)) 

Для будущих читателей. Решение от @Jakob Bowyer не конвертирует URL-адреса в ascii. После небольшого рытья я нашел это решение:

 >>> import urllib, urlparse >>> urllib.url2pathname(urlparse.urlparse('file:///home/user/some%20file.txt').path) '/home/user/some file.txt' 

РЕДАКТИРОВАТЬ:

Вот что я в итоге использовал:

 >>> import urllib >>> urllib.unquote('file:///home/user/some%20file.txt')[7:] '/home/user/some file.txt'