I have an uploader which has file format validation (only some video formats can be uploaded).
However users can simply change the original file name extension and pass the validation (e.g. rename
In python you can use
Quote from the Readme:
python-magic is a python interface to the libmagic file type identification library. libmagic identifies file types by checking their headers according to a predefined list of file types.
It analyses the file header instead of using only the file extension to recognise the file type.
The usage is simple:
>>> import magic >>> magic.from_file('renamed.pdf') 'ISO Media, Apple QuickTime movie' # More handy >>> magic.from_file('renamed.pdf', mime=True) 'video/quicktime'