Бібліотека Python Magic забезпечує необхідні вам функції.
Ви можете встановити бібліотеку pip install python-magic
та використовувати її наступним чином:
>>> import magic
>>> magic.from_file('iceland.jpg')
'JPEG image data, JFIF standard 1.01'
>>> magic.from_file('iceland.jpg', mime=True)
'image/jpeg'
>>> magic.from_file('greenland.png')
'PNG image data, 600 x 1000, 8-bit colormap, non-interlaced'
>>> magic.from_file('greenland.png', mime=True)
'image/png'
У цьому випадку код Python викликає libmagic під капотом, тобто тією ж бібліотекою, що використовується командою * NIX file
. Таким чином, це робить те саме, що відповіді на основі підпроцесу / оболонки, але без цих накладних витрат.