{"id":16209570,"url":"https://github.com/skshetry/webdav4","last_synced_at":"2025-04-07T11:08:17.879Z","repository":{"id":37950444,"uuid":"336543935","full_name":"skshetry/webdav4","owner":"skshetry","description":"WebDAV client library with a fsspec based filesystem and a CLI.","archived":false,"fork":false,"pushed_at":"2024-08-26T14:00:22.000Z","size":49470,"stargazers_count":63,"open_issues_count":19,"forks_count":17,"subscribers_count":5,"default_branch":"main","last_synced_at":"2024-10-11T10:30:32.072Z","etag":null,"topics":["fsspec","webdav","webdav-cli","webdav-client"],"latest_commit_sha":null,"homepage":"https://skshetry.github.io/webdav4","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/skshetry.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-02-06T13:26:43.000Z","updated_at":"2024-10-09T01:30:07.000Z","dependencies_parsed_at":"2024-06-18T19:47:58.145Z","dependency_job_id":"f59876d3-8a3b-4164-afe2-6afc8c7e193f","html_url":"https://github.com/skshetry/webdav4","commit_stats":{"total_commits":225,"total_committers":10,"mean_commits":22.5,"dds":"0.20444444444444443","last_synced_commit":"4c2046e2250f001bdad76541c0e877e4b40c332e"},"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skshetry%2Fwebdav4","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skshetry%2Fwebdav4/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skshetry%2Fwebdav4/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skshetry%2Fwebdav4/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/skshetry","download_url":"https://codeload.github.com/skshetry/webdav4/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247640464,"owners_count":20971557,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["fsspec","webdav","webdav-cli","webdav-client"],"created_at":"2024-10-10T10:30:20.513Z","updated_at":"2025-04-07T11:08:17.861Z","avatar_url":"https://github.com/skshetry.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# webdav4\n[![PyPi](https://img.shields.io/pypi/v/webdav4.svg)](https://pypi.org/project/webdav4)\n[![Conda](https://img.shields.io/conda/v/conda-forge/webdav4.svg?label=conda\u0026logo=conda-forge)](https://anaconda.org/conda-forge/webdav4)\n[![Status](https://img.shields.io/pypi/status/webdav4.svg)](https://pypi.org/project/webdav4)\n[![Python Version](https://img.shields.io/pypi/pyversions/webdav4)](https://pypi.org/project/webdav4)\n![ci](https://github.com/skshetry/webdav4/workflows/CI/badge.svg)\n\nWebdav API with an (optional) [fsspec](#fsspec) implementation and a [CLI](#cli).\n\n## Installation\n\n```console\n$ pip install webdav4\n```\n\n### Usage\n\n#### webdav4 Client\n```python\nfrom webdav4.client import Client\n\nclient = Client(\"https://webdav.com\", auth=(\"username\", \"password\"))\nclient.exists(\"Documents/Readme.md\")\n\nclient.ls(\"Photos\", detail=False)\nclient.upload_file(\"Gorilla.jpg\", \"Photos/Gorilla.jpg\")\n```\n\nCheck out [Client API](docs/reference/client.md) reference for more information.\n\n\n\n#### fsspec\n\n[`fsspec`](https://filesystem-spec.readthedocs.io) tries to provide a\nconsistent APIs to different storage backends, by defining standard\ninterfaces, so that other code using them could operate without depending\non the implementations of the backends. This package, in the same way,\nwraps the above [webdav client](#webdav4-client) with a consistent file-system API.\n\n\nTo use it, you need to install `fsspec` additionally which you can do as\nfollows:\n\n```console\n$ pip install webdav4[fsspec]\n```\n\n```python\nfrom webdav4.fsspec import WebdavFileSystem\n\nfs = WebdavFileSystem(\"https://webdav.com\", auth=(\"username\", \"password\"))\nfs.exists(\"Documents/Readme.md\")\n\nfs.ls(\"Photos\", detail=False)\n```\n\nCheck out [WebdavFileSystem API](docs/reference/fsspec.md) reference for more information.\n\n\n#### CLI\n\nwebdav4 also provides a CLI similar to `aws s3` to make it easier to work with webdav servers.\n![cli-usage](docs/_static/usage.png)\n\nPlease checkout [CLI Usage](docs/reference/cli.md) for more information.\n\n### Contributing\n\nContributions are welcome. Please take a look at\n[Contributing Guide](CONTRIBUTING.md) for more details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fskshetry%2Fwebdav4","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fskshetry%2Fwebdav4","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fskshetry%2Fwebdav4/lists"}