{"id":24221,"library":"pdfid","title":"PDFiD","description":"A Python library based on DidierStevens' PDFID tool for analyzing PDF files for malicious content. It scans PDFs for common suspicious elements like JavaScript, embedded files, and auto-actions. Current version 1.1.3, with intermittent releases.","status":"active","version":"1.1.3","language":"python","source_language":"en","source_url":"https://github.com/mlodic/pdfid","tags":["pdf","malware-analysis","forensics","security"],"install":[{"cmd":"pip install pdfid","lang":"bash","label":"Install from PyPI"}],"dependencies":[{"reason":"Required for parsing some PDF structures","package":"pyewf","optional":true}],"imports":[{"wrong":"from pdfid import PDFiD","symbol":"PDFiD","correct":"import pdfid"}],"quickstart":{"code":"from pdfid import PDFiD\n\n# Analyze a PDF file\nwith open('sample.pdf', 'rb') as f:\n    data = f.read()\n\npdfid = PDFiD(data)\nprint(pdfid.results())","lang":"python","description":"Instantiate PDFiD with file content as bytes, then call results() for a dictionary of findings."},"warnings":[{"fix":"Open the file in binary mode and read all bytes before passing to PDFiD.","message":"PDFiD expects the entire file content as bytes; passing a file path or file object will fail silently or raise an error.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Check counts > 0 to determine presence: if pdfid.results().get('JavaScript', 0) > 0.","message":"The results() method returns a dictionary with keys like 'JavaScript', 'OpenAction', etc. The values are the count of occurrences, not booleans.","severity":"gotcha","affected_versions":">=1.0.0"}],"env_vars":null,"search_vec":"'1.1.3':34 'action':31 'analysi':41 'analyz':11 'auto':30 'auto-act':29 'base':5 'common':21 'content':16 'current':32 'didiersteven':7 'element':23 'embed':26 'file':13,27 'forens':42 'intermitt':36 'javascript':25 'librari':4 'like':24 'malici':15 'malwar':40 'malware-analysi':39 'pdf':12,38 'pdfid':1,8 'pdfs':19 'python':3 'releas':37 'scan':18 'secur':43 'suspici':22 'tool':9 'version':33","created_at":"2026-05-01T08:11:56.187098+00:00","updated_at":"2026-05-01T08:11:56.187098+00:00","problems":null,"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":"1.1.3","cli_name":"pdfid","cli_version":"sh: 1: pdfid: not found","type":"library","homepage":null,"github":"https://github.com/mlodic/pdfid","docs":null,"changelog":null,"pypi":"https://pypi.org/project/pdfid/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["data","auth-security"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"passing","verified_at":"2026-07-03","last_verified":"2026-07-03","next_check":"2026-08-02","install_tag":null}}