A python module and command to try really hard to get a mime-type for a file
Project description
About
magic-identify implements a wrapper around both the python-magic module and the identify module to try and always return results, even if one fails. Finally, failing that it will try to guess some minimal shell script environments too (specifically looking at common keywords in malware droppers/downloaders that do not always have leading identification lines).
It returns two strings, one which may be a higher level text description and a second which should always be a mime-type identifier.
Example module use:
import magicidentify
c = magicidentify.MagicIdentify()
print(c.identify("/bin/ls"))
# ('application/x-pie-executable', 'application/x-pie-executable')
Example CLI use:
# magic-identify /bin/ls /sbin/ifup
/bin/ls: application/x-pie-executable, application/x-pie-executable
using magic: application/x-pie-executable, application/x-pie-executable
using identify: unknown, unknown
using hack: unknown, unknown
/sbin/ifup: inode/symlink, inode/symlink
using magic: inode/symlink, inode/symlink
using identify: bash/shell, text/x-bash
using hack: unknown, unknown
# magic-identify -q /bin/ls /sbin/ifup
application/x-pie-executable
inode/symlink
Todo
- Handle more boring cases from some outputs (text/inode)
Acknowledgements
The following wonderful github accounts have contributed to the code base:
- @JakeRoggenbuck
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file magic-identify-0.2.2.tar.gz.
File metadata
- Download URL: magic-identify-0.2.2.tar.gz
- Upload date:
- Size: 4.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 CPython/3.10.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4b44bd62b06168fcb6f066ae32bdce81d0be29f726a54a076043f19911e84744
|
|
| MD5 |
1fe756efafe96ef1ed9e2a79a0eed2c8
|
|
| BLAKE2b-256 |
0050fa44396a286e2c8fbe9adb118993cc6a3b0d0c700925942e4e0544495d19
|
File details
Details for the file magic_identify-0.2.2-py3-none-any.whl.
File metadata
- Download URL: magic_identify-0.2.2-py3-none-any.whl
- Upload date:
- Size: 5.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 CPython/3.10.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
638bb77086b9e976c6fecf38f6fe937c587e91b5c0d1f6a0b2dfa0b81b739c7c
|
|
| MD5 |
223604245589a9f2b1deb0573f116d2b
|
|
| BLAKE2b-256 |
f48e0ed4ed3a90e466bef6b5f1e6f5157c94dff97d924833bdb360c2efbbed47
|