Skip to main content

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!

Project details


Download files

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

Source Distribution

puush.py-1.1.0.zip (11.6 kB view details)

Uploaded Source

Built Distribution

puush.py-1.1.0-py2.py3-none-any.whl (8.4 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file puush.py-1.1.0.zip.

File metadata

  • Download URL: puush.py-1.1.0.zip
  • Upload date:
  • Size: 11.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for puush.py-1.1.0.zip
Algorithm Hash digest
SHA256 b8b966ed6ffd15187cc25d4e588ef2aa9fe622925220a1bd1fcb40d3c63217b9
MD5 0d24c3a78e9bea19e13f056397d36f53
BLAKE2b-256 85457bbee333f67840b77dd6f78ac616862d01596bcb622b83603d7d0eeb6af7

See more details on using hashes here.

File details

Details for the file puush.py-1.1.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for puush.py-1.1.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 1dcc71fcfbd0723b33ec9e3ac4aeed93fa61ab781c49eea26b897d03cb853b10
MD5 30ef0c8357c0bb45a4ecb841fe65617a
BLAKE2b-256 e13177a44e2160ad72d03843ee0527b63141b5291e3ed9db43df0f3019fed4e0

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page