Веб-версияОткрыть в Telegram

ПостВ работе с медиа файлами часто требуется определить не просто расширение, а его, скажем так, "категорию". Тоесть определ…

5 января 2026
P
Python Заметки
В работе с медиа файлами часто требуется определить не просто расширение, а его, скажем так, "категорию". Тоесть определить это видео, аудио или картинка. Примерно в 10 случаях из 10 в ревью я вижу обычный хардкодинг с большим мапингом и соответствующим поиском по нему. file_type_by_ext = { 'video': ['.mp4', '.mov', '.mkv', ...], 'audio': ['.mp3', '.wav', '.ogg', ...], 'image': ['.jpg', '.png', '.exr', ...] } Для таких случаев есть простой способ - стандартная библиотека mimetypes. import mimetypes mimetypes.guess_type("example.txt") # ('text/plain', None) Причём ей не нужен файл, достаточно просто имени строкой. Первый элемент кортежа это MIME-тип (Multipurpose Internet Mail Extensions Type) - стандартный способ идентификации формата файла. Формат: type/subtype type - общая категория данных (text, video, image) subtype - конкретный формат внутри категории mimetypes.guess_type("photo.jpg") # ('image/jpeg', None) mimetypes.guess_type("render.mp4") # ('video/mp4', None) Второй элемент это тип кодировки содержимого, обычно для контейнеров типа gz и аналогичных. mimetypes.guess_type("file.tar.gz") # ('application/x-tar', 'gzip') mimetypes.guess_type("backup.tar.bz2") # ('application/x-tar', 'bzip2') Итого, узнать категорию файла одной строкой: mimetypes.guess_type('myfile.mov')[0].split('/')[0] # video Конечно при условии, что тип будет распознан, иначе будет None а не строка. Но об этом в следующий раз. #libs #tricks
8 · 1K ·

Рядом в ленте

PPython ЗаметкиС Новым Годом! 🎄☃️❄️ Снова этот рубеж подведения итогов и определения планов на следующее 365 дней. Что же мы успели застать в 2к25? 🔸 AI снова делает скачёк в PPython ЗаметкиФотография
это сообщение
PPython Заметкиimport mimetypes mimetypes.guess_type("example.fbx") # (None, None) Формат не распознан, так как не зарегистрирован в системе. Регистрация происходит с помощью PPython ЗаметкиВсе знают синтаксический сахар с операторами +=, -= и тд x += 1 Где под капотом он превращается в x = x + 1 Останется ли переменная х той же переменной после +=
PPython ЗаметкиPython Заметки@pythonotes · канал · Технологии
2 206подписчиков350средний охват поста
Лента площадки Открыть в Telegram

Открытая публичная лента из поискового индекса ChatCrawler — «Google по публичному Telegram»; обновляется по мере обхода площадки. Время — UTC.

Только публичный контент, официальный API Telegram. О проекте · Вопросы · Чего мы не делаем · Убрать страницу из выдачи · Каталог · Поиск · Как мы считаем