blob: 9b00dd815ce9cd3e732eb20db2aa116656fdcbd0 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
cloudpathlib is a Python library with classes that mimic pathlib.Path's
interface for URIs from different cloud storage services.
Why use cloudpathlib?
- Familiar: If you know how to interact with Path, you know how to interact with
CloudPath. All of the cloud-relevant Path methods are implemented.
- Supported clouds: AWS S3, Google Cloud Storage, and Azure Blob Storage are
implemented. FTP is on the way.
- Extensible: The base classes do most of the work generically, so implementing
two small classes MyPath and MyClient is all you need to add support for a new
cloud storage service.
- Read/write support: Reading just works. Using the write_text, write_bytes or
.open('w') methods will all upload your changes to cloud storage without any
additional file management as a developer.
- Seamless caching: Files are downloaded locally only when necessary. You can
also easily pass a persistent cache folder so that across processes and
sessions you only re-download what is necessary.
- Tested: Comprehensive test suite and code coverage.
- Testability: Local filesystem implementations that can be used to easily mock
cloud storage in your unit tests.
|