file-type is a binary file type detector that identifies file extensions and MIME types by analyzing magic numbers and signature bytes in binary data. It functions as a magic number parser and MIME type resolver, mapping binary signatures to standardized media type strings. The project is an extensible file format identifier that allows for the addition of custom detector plugins to recognize uncommon or non-binary file formats. The engine supports binary format identification across various data sources, including buffers and data streams. It utilizes a supported format registry and provide
Tika is a content analysis toolkit and Java library designed for detecting and extracting metadata and text from thousands of different file types. It functions as a universal document text extractor and metadata extraction engine, converting complex files into plain text or XHTML. The system employs a specialized MIME type detector that identifies document formats using magic bytes and metadata to determine the correct parser. It serves as an OCR integration gateway, connecting to external text recognition tools to extract content from image files. The project covers a broad range of extrac
UniExtract2 is a suite of tools designed for universal archive extraction, batch decompression, and file format analysis. It retrieves files from various compressed formats, software installers, disk images, and game archives into local directories. The project includes a file format analyzer that identifies file types by scanning internal contents and headers without requiring full extraction. It also features an archive password decrypter that attempts to recover access to protected archives using a predefined list of common passwords. The tool supports bulk decompression workflows through
Kreuzberg is a document extraction engine that converts PDFs, Office files, images, and over 90 other formats into clean, structured text and metadata. It is built around a compiled Rust core that can be used as a native library, a command-line tool, a REST API server, or a WebAssembly module for browser-based processing. The system is designed to run entirely on self-hosted infrastructure, with no data leaving the user's environment. What distinguishes Kreuzberg is its breadth of integration surfaces and its pipeline architecture. It exposes extraction capabilities through native bindings fo
python-magic is a C-binding wrapper that provides a Python interface for the libmagic system library. It functions as a file signature analyzer and MIME type detector, identifying file formats by comparing header bytes against a database of known binary signatures.
The main features of ahupp/python-magic are: Magic Byte File Identification, Binary Data Analysis, libmagic Wrappers, MIME Type Detection, MIME Type Detectors, File Type Inference, MIME Type Mappings, Custom Magic Databases.
Open-source alternatives to ahupp/python-magic include: sindresorhus/file-type — file-type is a binary file type detector that identifies file extensions and MIME types by analyzing magic numbers and… apache/tika — Tika is a content analysis toolkit and Java library designed for detecting and extracting metadata and text from… bioruebe/uniextract2 — UniExtract2 is a suite of tools designed for universal archive extraction, batch decompression, and file format… kreuzberg-dev/kreuzberg — Kreuzberg is a document extraction engine that converts PDFs, Office files, images, and over 90 other formats into… ldqk/masuit.tools — Masuit.Tools is a comprehensive static utility library for .NET and ASP.NET Core development. It provides a broad… danog/madelineproto — MadelineProto is an asynchronous PHP library that provides a programmatic interface for interacting with the Telegram…