Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

A Python module for the Puush (http://puush.me/) API.

Project Description

puush.py is a Python library for interfacing with Puush, a file host, web app, and desktop app with a great quick-upload screenshot feature. It’s very simple to use:

import puush
account = puush.Account("my_api_key")
account.upload("super_cool_picture.png")

To use puush.py, you will need either login credentials (e-mail and password), or an API key, which can be obtained from your account settings page.

Installation

Simply install it with pip, as following:

pip install puush.py

Documentation

Mainly, you will be using the puush.Account class. It uses puush.File objects, however, so both of these are detailed below. On failure, all methods raise a puush.PuushError.

puush.Account(api_key_or_email[, password=None])

Initialize an Account using either an API key or login credentials:

# With API key
account = puush.Account("my_api_key")
# With login credentials
account = puush.Account("name@example.com", "bestpassword")

If the API key or credentials are invalid, a puush.AuthenticationError (which subclasses puush.PuushError) will be raised.

puush.Account.upload(self, f)

Upload a file to the Puush account. The only parameter, f, can be either a path to a file or a file-like object. Return a puush.File.

puush.Account.delete(self, id)

Delete the file with the ID id from the Puush account.

Also consider using puush.File.delete if you already have a File.

puush.Account.thumbnail(self, id)

Get the 100x100px thumbnail of the file with the ID id, and return its raw PNG data.

Also consider using puush.File.thumbnail if you already have a File.

puush.Account.history(self)

Return a list of the Puush account’s last 10 (or fewer, if the account has fewer) uploads. Each entry is a puush.File.

puush.Account.is_premium

True if the account has premium status, False if not.


puush.File(id, url, filename, upload_time, views)

A file uploaded to Puush. Not meant to be initialized outside of the library.

puush.File.delete(self)

Delete the file from Puush.

puush.File.thumbnail(self)

Get the 100x100 thumbnail of the file. Return the raw PNG data.

puush.File.id

The Puush ID of the uploaded file. Is unique to the file, and can be used with puush.Account methods.

puush.File.url

The URL to access the file.

puush.File.filename

The file’s original filename.

puush.File.upload_time

The file’s upload time, formatted “YYYY-MM-DD HH:MM:SS”.

puush.File.views

How many times the file has been accessed.

Special thanks

I would like to thank blha303 for the Puush API documentation. Having it definitely saved me a lot of time reverse-engineering the desktop app.

Contact

If there’s a bug with the library or a feature you’d like, please open an issue on GitHub.

If you want to ask questions about the library, or just want to talk to me about… anything, really, you can do so through any of these:

To get a quick answer, Twitter is your best bet.

Enjoy!

Release History

Release History

This version
History Node

1.1.0

History Node

1.0.1

History Node

1.0.0

Download Files

Download Files

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

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
puush.py-1.1.0-py2.py3-none-any.whl (8.4 kB) Copy SHA256 Checksum SHA256 2.7 Wheel Jan 31, 2016
puush.py-1.1.0.zip (11.6 kB) Copy SHA256 Checksum SHA256 Source Jan 31, 2016

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting