Skip to content

Kataglyphis/WebDavClient

Repository files navigation


logo
WebDav client

Download files via webdav easily. Use it to communicate to cloud storage provider (e.g. Nextcloud, ownCloud, Magenta, Synology NAS, QNAPS NAS) and automate your personal storage tasks.

Other solutions (on pyPI) did not fit my needs and/or were not actively maintained .

TopLang Donate Twitter Codecov Coverage Test WebDavClient + Deploy web page

About The ProjectGetting StartedLicenseLiterature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Tests
  4. Roadmap
  5. Contributing
  6. License
  7. Contact
  8. Acknowledgements
  9. Literature

About The Project

This module provides an easy interface for communication via WebDav protocol to a remote host (f.e. you can automate downloads from your cloud). For certain use cases one might want to be able to automatically download files from your cloud. This is an easy way to do it

Usage Example:

Example usage of the method:
    from webdavclient.webdavclient import WebDavClient
    
    hostname = "https://yourhost.de/webdav"
    username = "Schlawiner23"
    password = "YOUR_PERSONAL_TOKEN"
    remote_base_path = "MyProjectFolder"
    local_base_path = "assets"
    webdevclient = WebDavClient(args.hostname, args.username, args.password)
    webdevclient.download_all_files_iterative(
        args.remote_base_path, args.local_base_path
    )

Key Features

Feature Implement Status
Download all files from remote host ✔️

Dependencies

I use Python 3.11

This enumeration also includes submodules.

  • Python dependencies are listed in requirements.txt and in the requirements folder
  conda create --name WebDavClient python=3.11
  conda activate WebDavClient
  pip install -r requirements.txt

Useful tools

Getting Started

Prerequisites

Installation

  1. Clone the repo
    git clone [email protected]:Kataglyphis/WebDavClient.git

Tests

Run pytest in root directory 😄

Roadmap

Upcoming :)

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Contact

Jonas Heinle - @Cataglyphis_ - [email protected]

Project Link: https://github.com/Kataglyphis/WebDavClient

Acknowledgements

Literature

Some very helpful literature, tutorials, etc.

Releases

No releases published

Packages

No packages published

Languages