Skip to main content

Python convenience function for opening compressed URLs and files.

Project description

Python convenience function canopener(filename, mode=’r’) for opening files.

Local files behave identically to open(). `python canopener('local_file.txt') `

URLs can also be passed as the filename and opened for reading. urllib2.urlopen() is used under the covers, so it has equivalent support. `python canopener('http://remote/file.txt') `

S3 URLs can also be read if the [boto](https://github.com/boto/boto) module is installed and the AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY environment variables are set. The file is downloaded to a temporary local file on open. `python os.environ['AWS_ACCESS_KEY_ID'] = 'key' os.environ['AWS_SECRET_ACCESS_KEY'] = 'secret' canopener('s3://bucket/file.txt') `

Any paths with “.gz” or “.bz2” extensions are transparently decompressed. `python canopener('local_file.txt.gz') canopener('local_file.txt.bz2') canopener('http://remote/file.txt.gz') canopener('s3://bucket/file.txt.gz') `

There’s also transparent compression when writing to local files. `python canopener('local_file.txt.gz', 'w') `

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

canopener-0.1.1.tar.gz (2.6 kB view details)

Uploaded Source

File details

Details for the file canopener-0.1.1.tar.gz.

File metadata

  • Download URL: canopener-0.1.1.tar.gz
  • Upload date:
  • Size: 2.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for canopener-0.1.1.tar.gz
Algorithm Hash digest
SHA256 918747dbc827fea42ee4564e2c9daa2a50f2f21152f6950b7c0bbb3ae54b720f
MD5 28505039d0ea4b94320d117d49ab73e1
BLAKE2b-256 bc6fbf99d1a671fcec4d8edac839699c685f5c8dcd399843753777cd4e749441

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