Skip to main content

Python library for Uploadcare.com

Project description

https://travis-ci.org/uploadcare/pyuploadcare.png?branch=master

The most important thing for us at Uploadcare is to make file uploading on the web really easy. Everyone is used to the routine work, related to allowing users upload their userpics or attach resumes: from installing image processing libraries to creating folder with right permissions to ensuring the server never goes down or out of space to enabling CDN. Feature like ability to simply use a picture from Facebook or manual cropping are much more burdensome, hence rare. Uploadcare’s goal is to change the status quo.

This library consists of an API interface for Uploadcare and a couple of Django goodies.

A simple Uploadcare ImageField can be added to an existing Django project in just a couple of simple steps. As a result, your users are going to be able to see the progress of the upload, choose files from Google Drive or Instagram, and edit form while files are uploading asynchornously.

from django.db import models

from pyuploadcare.dj import ImageField


class Candidate(models.Model):

    photo = ImageField(blank=True, manual_crop="")
https://ucarecdn.com/93b254a3-8c7a-4533-8c01-a946449196cb/-/resize/800/manual_crop.png

Features

  • Django widget with useful manual crop and multiupload;

  • ucare console utility;

  • hosted assets (Kudos to Sławek Ehlert!).

Installation

To install it, just run:

$ pip install pyuploadcare

or, if you’re into vintage:

$ easy_install pyuploadcare

Testing

Besides the Travis CI we use tox. In order to run tests just:

$ pip install tox
$ tox

History

1.0

0.19

0.18

  • Widget was updated up to 0.6.9.1.

0.17

  • ImageField was added. It provides uploading only image files. Moreover, you can activate manual crop, e.g. ImageField(manual_crop='2:3').

  • More apropriate exceptions were added.

  • Tests were separated from library and were restructured.

  • Widget was updated up to 0.6.7.

  • Issue of FileField’s blank, null attributes was fixed.

0.14

  • Replace accept header for old api version

0.13

  • Fix unicode issue on field render

0.12

  • Add new widget to pyuploadcare.dj

  • Remove old widget

  • Use https for all requests

0.11

  • Add cdn_base to Ucare.__init__

  • Get rid of api v.0.1 support

  • Add File.ensure_on_s3 and File.ensure_on_cdn helpers

  • Add File properties is_on_s3, is_removed, is_stored

  • Fix url construction

  • Add and correct waiting to upload and upload_from_url

0.10

  • Add console log handler to ucare

  • Add wait argument to ucare store and delete commands

  • Fix ucare arg handling

0.9

  • Add bunch of arguments to ucare upload and upload_via_url commands

  • Fix UploadedFile.wait()

0.8

  • Fix file storing for old API

  • Replaced Authentication header with Authorization

  • Log warnings found in HTTP headers

  • Replace old resizer with new CDN

  • Add verify_api_ssl, verify_upload_ssl options

  • Add custom HTTP headers to API and upload API requests

0.7

  • Added __version__

  • Added ‘User-Agent’ request header

  • Added ‘Accept’ request header

  • Added ucare config file parsing

  • Added pyuploadcare/tests.py

  • Replaced upload API

  • Replaced File.keep with File.store, File.keep is deprecated

  • File.store uses new PUT request

  • Added timeouts to File.store, File.delete

  • Added upload and upload_from_url to ucare

  • Added tests during setup

  • Replaced httplib with requests, support https (certificates for api requests are verified)

  • Added api_version arg to UploadCare, default is 0.2

0.6

  • Added ucare cli utility

  • Added PYUPLOADCARE_UPLOAD_BASE_URL setting

  • Added PYUPLOADCARE_WIDGET_URL

  • Updated widget assets to version 0.0.1

  • Made properties out of following pyuploadcare.file.File’s methods:

    • api_uri()

    • url()

    • filename()

  • Changed pyuploadcare.UploadCareException.__init__

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

pyuploadcare-1.0.tar.gz (152.5 kB view details)

Uploaded Source

File details

Details for the file pyuploadcare-1.0.tar.gz.

File metadata

  • Download URL: pyuploadcare-1.0.tar.gz
  • Upload date:
  • Size: 152.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pyuploadcare-1.0.tar.gz
Algorithm Hash digest
SHA256 aade9b4e188aedbfe79202d27f8c4b07b33d470acfce17679e98c56bf4289583
MD5 f475fcb02e126fa5bc4af105ebbcc615
BLAKE2b-256 6018be0fa261c878a2927a57ecf608411e9af361497fefb615744c867bdce2e9

See more details on using hashes here.

Supported by

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