Open PKL files in your browser
Python's own way of saving objects, used for models, datasets and caches. See what one holds right here, without running it. Nothing leaves your device.
Or drop it anywhere on this page
What you'll see
Your pickle opens as what it holds, read without running any of it.
- What loading it would call • Commands and code marked
- Its values as a tree • Dicts, lists, arrays and objects
- PyTorch's tensors in a table • Their types and shapes
- Nothing in it runs • Read as data only
About PKL
Pickle is Python's built-in way of saving its objects: dicts, lists, NumPy arrays, pandas tables and trained scikit-learn models all go into a .pkl. Data scientists pass them around, and machine learning projects ship models as pickles.
A pickle isn't plain data but a small program: opcodes that rebuild each object, calling whatever functions the file names. Loading one in Python can run any command, so a pickle from a stranger can take over a computer, and Python's own documents warn to load only pickles you trust.
Filepeek reads the opcodes without running any of them. It shows what the pickle holds as a tree, dicts, lists, NumPy arrays and objects with the values they would be rebuilt from, and lists every import loading it would call, with those that run commands or code marked.
Python pickle
.pkl • .pickle
Format
- MIME type
- application/octet-stream
- Made by
- The Python Software Foundation
Inside the file
- Holds
- Python objects of any kind
- Protocols
- 0 to 5
- Rebuilt by
- Calls to the functions it names
- Runs code
- In Python, when loaded • Never here
Opens in every browser
Browsers download pickles, and only Python loads them. Filepeek shows what one holds in Chrome, Edge, Firefox and Safari, without running it.
- YouChromeOpens through Filepeek
- YouEdgeOpens through Filepeek
- YouFirefoxOpens through Filepeek
- YouSafariOpens through Filepeek
Apps that open PKL
- WindowsPython's pickle module, which runs what it loads
- MacPython's pickle module, which runs what it loads
- iPhone and iPadNo app opens it
- AndroidNo app opens it
Questions
How do I see what's in a pickle without Python?
Drop it on this page or press Peek a PKL. What it holds shows as a tree, read without running anything.
Is it safe to open a pickle file?
Here, yes: Filepeek reads it as data and runs nothing. Loading it in Python runs whatever it says, so check what loading it would call first, and load it only if you trust where it came from.
What does Loading it would call os.system mean?
That pickle runs a command when Python loads it, which is how harmful pickles work. Filepeek marks every import that runs commands or code, like os.system, subprocess, eval and exec.
Why does an object show as its class and values?
Python rebuilds an object by calling its class with the values the pickle keeps, and only the class's own code knows what that makes. Filepeek shows the class's name and those values instead.
What's the difference between .pkl and .pickle?
None. Both are what Python's pickle module writes, and both open here.