Kataglyphis-WebDavClient
Kataglyphis-WebDavClient 🚀
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
For the official docs follow this link.
Table of Contents
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 kataglyphis_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
./scripts/linux/ci_static_analysis.sh > "ci_analysis_$(date +%Y%m%d_%H%M%S).log" 2>&1
conda create --name WebDavClient python=3.11
conda activate WebDavClient
pip install -r requirements.txt
Useful tools
Getting Started
Prerequisites
Installation
Clone the repo
git clone --recurse-submodules git@github.com:Kataglyphis/Kataglyphis-WebDavClient.git
Tests
Run pytest in root directory :smile:
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.
Fork the Project
Create your Feature Branch (
git checkout -b feature/AmazingFeature)Commit your Changes (
git commit -m 'Add some AmazingFeature')Push to the Branch (
git push origin feature/AmazingFeature)Open a Pull Request
License
Contact
Jonas Heinle - @Cataglyphis_ - jonasheinle@googlemail.com
Project Link: https://github.com/Kataglyphis/WebDavClient
Acknowledgements
Literature
Some very helpful literature, tutorials, etc.
https://de.wikipedia.org/wiki/WebDAV