{"id":19307937,"url":"https://github.com/lucksi/mycroft","last_synced_at":"2026-02-24T07:15:25.708Z","repository":{"id":259934278,"uuid":"861764633","full_name":"Lucksi/Mycroft","owner":"Lucksi","description":"Mycroft is a Offline File Analyzer and Metadata Scraper","archived":false,"fork":false,"pushed_at":"2025-06-17T10:27:33.000Z","size":306,"stargazers_count":7,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-17T10:39:46.783Z","etag":null,"topics":["file-analyzer","hash","hashing","metadata","metadata-extraction","python","zip-extraction","zip-files"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Lucksi.png","metadata":{"files":{"readme":"Readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-09-23T13:30:06.000Z","updated_at":"2025-06-17T10:27:37.000Z","dependencies_parsed_at":"2024-12-07T14:20:42.737Z","dependency_job_id":"2a319602-4f65-4eaa-964c-0987a1ee436f","html_url":"https://github.com/Lucksi/Mycroft","commit_stats":null,"previous_names":["lucksi/mycroft"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Lucksi/Mycroft","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lucksi%2FMycroft","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lucksi%2FMycroft/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lucksi%2FMycroft/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lucksi%2FMycroft/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Lucksi","download_url":"https://codeload.github.com/Lucksi/Mycroft/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lucksi%2FMycroft/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29774523,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-24T04:54:30.205Z","status":"ssl_error","status_checked_at":"2026-02-24T04:53:58.628Z","response_time":75,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["file-analyzer","hash","hashing","metadata","metadata-extraction","python","zip-extraction","zip-files"],"created_at":"2024-11-10T00:13:05.587Z","updated_at":"2026-02-24T07:15:25.697Z","avatar_url":"https://github.com/Lucksi.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align = \"center\"\u003e\n\u003cimg src = \"Logo/Banner.png\"height = \"150px\" width=\"auto\"\u003e\n\u003c/p\u003e\n\n\u003cp align = \"center\"\u003e\n  \u003cimg src = \"https://img.shields.io/github/stars/Lucksi/Mycroft\"\u003e\n  \u003cimg src = \"https://img.shields.io/github/forks/Lucksi/Mycroft\"\u003e\n  \u003cimg src = \"https://img.shields.io/badge/Maintained%3F-yes-green.svg\"\u003e\n  \u003cimg src = \"https://img.shields.io/github/license/Lucksi/Mycroft\"\u003e\n  \u003cimg src = \"https://img.shields.io/github/repo-size/Lucksi/Mycroft\"\u003e\n  \u003cimg src= \"https://img.shields.io/github/languages/count/Lucksi/Mycroft\"\u003e\n\u003c/p\u003e\n\n## Introduction\n\n**Mycroft is a Offline File Analyzer and Metadata Scraper. Other than extracting metadata from a certain types of files it also a file analyzer which gives you extra information such as hashes,checksums and other file details.**\n\n## Screenshot:\n\u003cimg src = \"Screenshot/Screenshot.png\" \u003e\n\n## Requirements:\n```\nPython3\n```\n\n## Installation Linux:\n```bash\nsudo apt-get update\nsudo apt-get install python3\nsudo apt-get install git\ngit clone https://github.com/Lucksi/Mycroft\n```\n## Execution:\n```bash\ncd Mycroft\npython3 main.py\n```\n## Usage Example:\n\n**After executing the program a simple query example is the following**\n```bash \n/home/test/Desktop/example.pdf\n```\n**In case that an input folder is not specified the input folder will be the folder Files inside Mycroft folder with only the filename the program will extract only the metadata of the inserted file**\n\n## Operating Sytstems:\n\n| Platform | Tested |\n| ------------- | ------------- |\n| Linux  | ✅ |\n| Mac-Os  | ❌ |\n| Windows | ❌ |\n\n## Optional Commands:\n\n| Option name | Description | Query Example |\n| ------------- | ------------- | -------------|\n| `--internal`  | Scan files from 'Files' internal folder| test.docx --internal |\n| `--output`  | Insert path to a custom output folder | --output /home/test/Desktop |\n| `--ext_d`  | List Files of an external directory | list --ext_d /home/test/Desktop |\n| `--folder_name`  | Change the name of the output directory | --folder_name Test |\n| `--advanced`  | Extract advanced information from metadata | test.docx --advanced |\n| `--comments`  | Extract comments from the document | test.docx --comments |\n| `--text`  | Extract file text-content from document | test.docx --text |\n| `--urls`  | Extract urls from the document | test.docx --urls |\n| `--search`  | Search for a specific keyword in the document | test.docx --text --search Test |\n| `--db_search`  | Search for a specific file in the database by (id,md5,sha1,sha256,sha512 or name) | --db_search test.txt |\n| `--adv_db_search`  | Create Custom search Query's | --adv_db_search name=\"test\" AND extension = \"txt\"|\n| `--noVerbose`  | Disable screen output | test.docx --verbose\n| `--noOutput`  | Disable file output | test.docx --noOutput |\n| `--media`  | Extract media from documents| test.docx -- advanced --media\n| `--extraction`  | Extract files from archives| test.zip --extraction\n\n## Features:\n\n| Description | File-Format |\n| ------------- | ------------- |\n| Extract metadata  | docx, pdf, xlsx, pptx, jpg, png, mp4, odt, odg, dotx, potx , docm , xlsm , pptm, odp, ods, zip, apk, jar, psd, gif, jps, bmp, tar.xz, tar.gz, tar.bz2|\n| Get file hashes  | All formats |\n| Get local informations  | All formats |\n| Extract and Download media  | docx, pptx, odp, odt |\n| Extract Text  | docx, pptx, xlsx, odt, odp, ods|\n| Extract Comments  | docx, pptx, xlsx, odt, odp, ods|\n| Extract Urls  | docx, pptx, xlsx, odt, odp, ods|\n| Search Keyword  | docx, pptx, xlsx, odt, odp, ods|\n| Extract files  | zip, apk, jar, tar.xz, tar.gz, tar.bz2 |\n| Get archives file information  | zip, apk, jar |\n| Get archive information  | zip, apk, jar |\n| Get Pdf File Permission  | pdf |\n| Recognize archive Compression Type  | zip, apk, jar |\n| Recognize Password Protection  | zip, apk, jar|\n| Recognize Shared File  | docx, pptx, xlsx |\n| Recognize Suspicious keywords  | pdf |\n| Recognize Encryption Algorithm  | pdf |\n\n## Examples:\n\n|    Docx Comment Extraction           |      Jpg Image Analysis         |\n| ------------- | ------------- |\n|\u003cimg src = \"Screenshot/Example_1.png\" height = \"528px\"\u003e| \u003cimg src = \"Screenshot/Example_2.png\" height = \"528px\"\u003e |\n\n## File Hashing formats:\n\n| Name | File-Format |\n| ------------- |  ------------- |\n| `MD5`  | all files except archive protected files |\n| `SHA1`  | all files except archive protected files |\n| `SHA256`  | all files except archive protected files |\n| `SHA384`  | all files except archive protected files |\n| `SHA512`  | all files except archive protected files |\n\n## File Checksum formats:\n\n| Name | File-Format |\n| ------------- |  ------------- |\n| `Crc32`  | All Formats |\n| `Crc32-Control-Code`  | All Formats  |\n| `Adler32-Checksum`  | All Formats  |\n\n## Compression Algorithm:\n\n| Name | Archive Format |\n| ------------- |  ------------- |\n| `Storage`  | zip, apk, jar |\n| `Deflate`  | zip, apk, jar |\n| `Enhanced Deflate`  | zip, apk, jar |\n| `Bzip2`  | zip, apk, jar |\n| `LZMA`  | zip, apk, jar |\n| `Wavpack`  | zip, apk, jar |\n| `JPEG`  | zip, apk, jar |\n| `XZ`  | zip, apk, jar |\n| `PPMD`  | zip, apk, jar |\n| `AES`  | zip, apk, jar |\n\n## STARGAZERS OVER TIME \n\n[![Stargazers over time](https://starchart.cc/Lucksi/Mycroft.svg)](https://starchart.cc/Lucksi/Mycroft)\n\n\u003cbr\u003e\n\n## \u003cp align = center\u003e  ORIGINAL CREATOR: \u003ca href = \"https://github.com/Lucksi\"\u003eLUCA GAROFALO (Lucksi)\u003c/a\u003e\u003c/p\u003e\n\n\n## \u003cp align = center\u003eLICENSE: GPL-3.0 License \u003cbr\u003eCOPYRIGHT: (C) 2024-2026 Lucksi  \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flucksi%2Fmycroft","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flucksi%2Fmycroft","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flucksi%2Fmycroft/lists"}