Skip to main content

A django-based web receiver for Scrup which stores screencaptures on S3.

Project description

A django-based web receiver for Scrup which stores screencaptures on S3.


  • Receives POST’ed images from scrup and uploads them to S3, and returns a valid URL for the image.

There are a few things on the roadmap:

  • Giving some consideration to security matters – right now it’s either HTTPS or nothing.
  • Exception handling.
  • Thumbnail generation and storage on S3
  • A web-based timeline showing your history of screenshot uploads so you can easily find an old screenshot you’ve uploaded.


  1. Django (obviously).
  2. Boto, the python frontend to AWS


Getting django-scrup can be as easy as:

$ pip install django-scrup

in your favorite shell.

If you prefer to pull down and install the package yourself, you can always download or checkout the latest release and install via the usual python install.

Configuration and Usage

First, add 'scrup' to your INSTALLED_APPS. Don’t forget to ./ syncdb!

You’ll also need to define a few values in your

Your AWS access key.
Your AWS secret key.
The bucket in which django-scrup should store the uploaded screenshots. This must be a bucket which is writeable by the AWS user identified by the above credentials. This bucket should be solely devoted to the use of django-scrup, as the app will likely barf if it tries to upload a file with the same name as an existing file. By default, the uploaded files are stored in the root of the bucket, unless SCRUP_AWS_PREFIX is specified.
Optional. A relative pathname to a folder within the bucket. If this value is specified, uploads will be copied to<SCRUP_AWS_PREFIX>
Optional. A boolean value indicating whether to use the bucketname as the domain of the returned screenshot URL. If you’ve created a CNAME for your bucket, set this to True and the returned URLs will be of the form http://<BUCKETNAME>/foo vs. http://<BUCKETNAME>

Next, make sure to import django-scrup’s urls. A line like the following in your should do the trick:

(r'^scrup/', include('scrup.urls')),

Finally, plug the URL into Scrup’s configuration. Obviously, this depends on your server’s domain and how you’ve chosen to setup django-scrup’s urls. By default, django-scrup accepts uploads at upload/<FILENAME>, where <FILENAME> is optional. Here’s an example of the default URL scheme for{filename}


django-scrup is made available under the terms of the new BSD license. For the full legal text, please consult the LICENSE.txt file included in the root of the source tree.

Project details

Release history Release notifications | RSS feed

This version


Download files

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

Files for django-scrup, version 0.1
Filename, size File type Python version Upload date Hashes
Filename, size django_scrup-0.1-py2.6.egg (9.2 kB) File type Egg Python version 2.6 Upload date Hashes View
Filename, size django-scrup-0.1.tar.gz (4.8 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page