Skip to main content

Easily read and write to different storage platforms in Python.

Project description

https://img.shields.io/pypi/v/uriutils.svg https://readthedocs.org/projects/uriutils/badge/?version=latest

Working with multiple storage platforms (i.e., local filesystem, S3, Google Cloud, etc.) can be quite a hassle. This package aims to make it transparent to the user and the developer the underlying storage system by wrapping the different protocols in a common interface.

Documentation available at http://uriutils.readthedocs.io/

Usage

Example:

with uri_open('http://www.example.com', mode='r') as f:
    contents = f.read()

Example with argument parser:

parser = ArgumentParser(description='Read text file from URI.')
parser.add_argument('-i', '--input', type=URIFileType('r'), metavar='<input>', help='Input file URI.')
A = parser.parse_args()

contents = A.input.read()
print(contents)

Or, writing to a file with argument parser is as easy as:

parser = ArgumentParser(description='Write text file to URI.')
parser.add_argument('-o', '--output', type=URIFileType('w'), metavar='<output>', help='Output file URI.')
A = parser.parse_args()

A.output.write('Hello world!\n')
A.output.close()

And you can run python uri.py --output s3://example-bucket/output.txt.

For complete documentation, please see uriutils-0.1 documentation.

Contribution

For bugs and issues, please file them on the issues page. Thanks!

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

uriutils-0.1.16.tar.gz (11.5 kB view details)

Uploaded Source

File details

Details for the file uriutils-0.1.16.tar.gz.

File metadata

  • Download URL: uriutils-0.1.16.tar.gz
  • Upload date:
  • Size: 11.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Python-urllib/2.7

File hashes

Hashes for uriutils-0.1.16.tar.gz
Algorithm Hash digest
SHA256 91101576c9711de189b16c357b44b2ef4409048aec2f8d0f8daa8c1b3ffb45af
MD5 7b70e230f0d66123dc6a344f25e71b6b
BLAKE2b-256 59f715156911c6935dec648be1cbd1c3500360d99fb930650de1196d501b515c

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