Rclone wrapper for python
Project description
python-rclone
A Python wrapper for rclone.
rclone
must be already installed and discoverable in $PATH
.
Status
Work in progress. Experimental.
Usage
import rclone cfg = """[local] type = local nounc = true""" result = rclone.with_config(cfg).listremotes() print(result.get('out')) # b'local:\n' print(result.get('code')) # 0 print(result.get('error'))
Implemented commands:
copy
Copy files from source to dest, skipping already copiedsync
Make source and dest identical, modifying destination only.listremotes
List all the remotes in the config file.ls
List the objects in the path with size and path.lsjson
List directories and objects in the path in JSON format.delete
Remove the contents of path.
Even if not all rclone
commands have been exposed, it's possible to invoke any command using run_cmd
method directly, as shown in the example bellow:
import rclone cfg = """[local] type = local nounc = true""" result = rclone.with_config(cfg).run_cmd(command="lsd", extra_args=["local:/tmp", "-v", "--dry-run"])
Logging and Debugging
To see more info about which commands are executed, or what other messages they print, you can enable logging as the example bellow shows:
import logging logging.basicConfig( level=logging.DEBUG, format="%(asctime)s %(name)s [%(levelname)s]: %(message)s") import rclone cfg = """[local] type = local nounc = true""" result = rclone.with_config(cfg).listremotes()
Developer guide
$ pip install -r requirements.txt
$ make test
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Filename, size | File type | Python version | Upload date | Hashes |
---|---|---|---|---|
Filename, size python_rclone-0.0.2-py3-none-any.whl (4.2 kB) | File type Wheel | Python version py3 | Upload date | Hashes View |
Filename, size python-rclone-0.0.2.tar.gz (3.6 kB) | File type Source | Python version None | Upload date | Hashes View |
Close
Hashes for python_rclone-0.0.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 899a80c7212a9e377206b31aece3bfba80396e57c78ec5b9ad6f6c9fe8a4f772 |
|
MD5 | b5aaf899d562e3c8ebb96920f8a005ba |
|
BLAKE2-256 | 0efd55fc62562c8c6eff7f9a9a9c2a35167ad736362d09ec49c8f4d47586e808 |