Python Glossary English

все 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Сообщить о неточности