все Python 3mimetypesфункция
mimetypes.guess_type()
определение типа
Угадывает MIME-тип и кодировку сжатия по имени файла или URL. Возвращает пару (тип, кодировка); содержимое файла не читает.
Синтаксис
mimetype, encoding = mimetypes.guess_type(url, strict=True)
Результат всегда кортеж из двух элементов, а не строка: для 'a.tar.gz' это ('application/x-tar', 'gzip') — вторая часть говорит о сжатии, а не о кодировке текста. Тип берётся только из расширения: переименованный файл обманет функцию, а имя без расширения даёт (None, None). Регистр расширения не важен. С 3.13 для путей на диске предпочтительна guess_file_type().
Примеры
import mimetypes
print(mimetypes.guess_type('page.html')) # → ('text/html', None)
print(mimetypes.guess_type('backup.tar.gz')) # → ('application/x-tar', 'gzip')
print(mimetypes.guess_type('IMAGE.PNG')) # → ('image/png', None)
print(mimetypes.guess_type('README')) # → (None, None)
# Python 3.11+
import mimetypes
print(mimetypes.guess_type('https://ex.com/a.json?v=2')) # → ('application/json', None)
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности