A bulk upload library for DocumentCloud.
Project description
A Bulk-Upload Library for DocumentCloud
pneumatic is a Python 3 library that adds some luxury and safeguards to the bulk-uploading of hundreds, thousands or hundreds of thousands of files to DocumentCloud. It is meant to do one thing – upload – and serve as an adjunct to, but not a replacement for, the excellent python-documentcloud API wrapper.
pneumatic’s name is inspired by the pneumatic dispatch systems in newsrooms of yore, which featured a series of pneumatic tubes for sending copy from the newsrooms to other departments such as the composing room.
Features
Catalogs the API response for each upload in a SQLite database along with the file’s canonical URL.
Dumps the SQLite data to a CSV if you wish.
Multiprocessing (under Mac/Linux) for faster submission of files to DocumentCloud’s API.
Prevents inadvertent submission of file types DocumentCloud doesn’t handle, such as audio.
Links
Documentation: https://pneumatic.readthedocs.org/
Repository: https://github.com/anthonydb/pneumatic
Basic Usage
You will need an active DocumentCloud account and Python 3.4+. First, install via pip:
pip install pneumatic
Example use: To upload all files in a directory (and all sub-directories below it), assign them to an existing project, set the files to public access, and tag each with metadata, run the following code:
from pneumatic import DocumentCloudUploader
uploader = DocumentCloudUploader('person@example.com', 'your-password')
uploader.upload(
file_directory='/govfiles',
project='17477-loudoun-county-government',
access='public',
data={'type': 'government', 'action': 'lawsuit'})
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for pneumatic-0.1.6-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d3a6cc44864dda4140c7129febfafd352f6654b10dfe902c29cedb547ad122e0 |
|
MD5 | 3ff70ca078d7f0babaf2f7659642462f |
|
BLAKE2b-256 | a83ddc5f6d9816d5b650866f7cfec112b7640000a22a4877348f6a0a2f173676 |