Skip to main content
Help us improve Python packaging – donate today!

Command-line tool to sniff Puzzle & Dragons data.

Project Description

PyPICI

Quickstart

$ pip install padsniff

Padsniff can be used as either a cli:

$ padsniff run --port 8080 --script examples/log_plus_eggs.py
runs:   1 | hp:   1 | atk:   1 | rcv:   2
[...]

… or as a library!

import padsniff
import json

@padsniff.on(action='get_player_data')
def hello(request, response):
    username = json.loads(response.content.decode())['name']
    print('Hello, %s!' % username)

if __name__ == '__main__':
    proxy = padsniff.Proxy()
    proxy.run()

See the device setup guide to learn how to set up your phone to proxy through padsniff, and the usage guide for more advanced usage.

Installation

Padsniff requires Python 3.5+. Install it with your package manager or using pyenv.

$ pyenv update && pyenv install 3.5.2
$ pyenv shell 3.5.2

See the suggested build environment page if you’re having trouble getting pyenv to work.

OSX

Apple removed the OpenSSL headers in El Capitan, so you’ll have to set some environment variables before installing padsniff’s dependencies.

$ brew install openssl
$ export ARCHFLAGS="-arch x86_64" LDFLAGS="-L/usr/local/opt/openssl/lib" CFLAGS="-I/usr/local/opt/openssl/include"
$ pip install padsniff

Padsniff depends on mitmproxy’s transparent proxying capabilities. Follow their instructions to set up your computer for proxying.

Debian / Ubuntu

Padsniff includes a pretty heavy list of dependencies, including lxml and cryptography. You’ll need to install some of their dependencies via your package manager.

$ sudo apt-get install -y build-essential libffi-dev libssl-dev libxml2-dev libxslt-dev python3-dev
$ export LC_ALL=C.UTF-8 LANG=C.UTF-8
$ pip install padsniff

This will also set up your environment to support click, the library that powers padsniff’s command line interface.

Padsniff depends on mitmproxy’s transparent proxying capabilites. Follow their instructions to set up your computer for proxying.

Development

$ git clone git@gitlab.com:wmedlar/padsniff.git
$ cd padsniff
$ pip install -r dev-requirements.txt -e .

This will install the testing dependencies – padsniff uses pytest for unit testing – and install padsniff in editable mode.

Release history Release notifications

This version
History Node

1.2.1

History Node

1.2.0

History Node

1.1.1

History Node

1.1.0

History Node

1.0.1

History Node

1.0.0

History Node

0.9.3

History Node

0.9.2

History Node

0.9.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
padsniff-1.2.1-py3-none-any.whl (12.0 kB) Copy SHA256 hash SHA256 Wheel py3 Nov 11, 2017
padsniff-1.2.1.tar.gz (15.3 kB) Copy SHA256 hash SHA256 Source None Nov 11, 2017

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page