Skip to content

d0c-s4vage/pfp

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
bin
 
 
 
 
pfp
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Master Build Status PyPI Statistics Latest Release Documentation Status Coverage Status

Twitter Follow

pfp

pfp is a python-based interpreter for 010 template scripts.

See the main documentation on Read the Docs

Contributing

See CONTRIBUTING.md

Installation

Install pfp with

pip install --upgrade pfp

Tl;DR

CLI

pfp -t path/to/template input_file

All available options for the pfp CLI:

usage: pfp [-h] -t TEMPLATE [--show-offsets] [-k] input

Run pfp on input data using a specified 010 Editor template for parsing

positional arguments:
  input                 The input data stream or file to parse. Use '-' for
                        piped data

optional arguments:
  -h, --help            show this help message and exit
  -t TEMPLATE, --template TEMPLATE
                        The template to parse with
  --show-offsets        Show offsets in the parsed data of parsed fields
  -k, --keep            Keep successfully parsed data on error

Python Library

This should get you started parsing something using 010 templates:

import pfp

dom = pfp.parse(
	data_file="~/Desktop/image.png",
	template_file="~/Desktop/PNGTemplate.bt"
)