Webdav API with an (optional) fsspec implementation and a CLI.
$ pip install webdav4
from webdav4.client import Client
client = Client("https://webdav.com", auth=("username", "password"))
client.exists("Documents/Readme.md")
client.ls("Photos", detail=False)
client.upload_file("Gorilla.jpg", "Photos/Gorilla.jpg")
Check out Client API reference for more information.
fsspec
tries to provide a
consistent APIs to different storage backends, by defining standard
interfaces, so that other code using them could operate without depending
on the implementations of the backends. This package, in the same way,
wraps the above webdav client with a consistent file-system API.
To use it, you need to install fsspec
additionally which you can do as
follows:
$ pip install webdav4[fsspec]
from webdav4.fsspec import WebdavFileSystem
fs = WebdavFileSystem("https://webdav.com", auth=("username", "password"))
fs.exists("Documents/Readme.md")
fs.ls("Photos", detail=False)
Check out WebdavFileSystem API reference for more information.
webdav4 also provides a CLI similar to aws s3
to make it easier to work with webdav servers.
Please checkout CLI Usage for more information.
Contributions are welcome. Please take a look at Contributing Guide for more details.