A simple Python utility to download files or entire folders recursively from Filebrowser shares.
Project description
Filebrowser Downloader
A simple Python utility to download files or folders from a Filebrowser public share URL.
Supports:
✅ Password-protected shares
✅ Recursive folder downloads (preserves structure)
✅ Progress display for file downloads
✅ Skipping already downloaded files (with size check)
✅ Partial file cleanup on error
✅ Configurable verbosity and error handling
Although primarily intended as a downloader, this utility also supports file uploads using username and password auth.
Installation
Download from PyPI:
pip install filebrowser-downloader
Minimal Usage
from filebrowser_downloader import download
# Download a single file into the current working directory:
download("https://yourhost/share/abc123")
# Download a folder (recursively) into path/to/folder
download(
base_url="https://yourhost/share/def456",
password="secret",
destination_folder="path/to/folder"
)
Parameters:
- base_url: The public share URL (
https://host/share/<share_id>). - password: Password if the share is protected. If
Noneand required, the user is prompted interactively. - destination_folder: Where to save files/folders. Defaults to
cwdif it's a file, otherwise a folder is downloaded into a new subdirectory named after theshare_id - abort_if_exists: Skip files that already exist and match size. If a file exists but size mismatches, it is re-downloaded. (Default =
True) - verbose: Show progress, warnings, and status messages. (Default =
True) - raise_on_error: If
True, raises exceptions instead of failing silently/logging. (Default =False) - Returns: Path to the downloaded file or folder.
Upload Usage
from filebrowser_downloader import upload
upload(
base_url="https://yourhost",
local_file="path/to/file.bin",
remote_folder="my/remote/folder",
remote_filename="renamed-on-server.bin", # omit/None to keep local filename
username="your_username",
password="your_password", # omit to prompt interactively
override=True,
)
Notes:
remote_folderis appended to/api/tus/<remote_folder>/<filename>.remote_filenameoverrides the remote file name; ifNone,local_file's filename is used.overridecontrols whether remote file is overwritten or kept.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file filebrowser_downloader-0.2.2.tar.gz.
File metadata
- Download URL: filebrowser_downloader-0.2.2.tar.gz
- Upload date:
- Size: 9.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dcfdba97b22b6b13e670a9552e5f9e74de1656e79bbafc66da30561f183830d6
|
|
| MD5 |
b2dfbbf1b1b6aed9c7172a07a6da9e0b
|
|
| BLAKE2b-256 |
afed73c5913c89375d1f5e34b7f78deb25060ae93fce5df0028044b8b694ba74
|
File details
Details for the file filebrowser_downloader-0.2.2-py3-none-any.whl.
File metadata
- Download URL: filebrowser_downloader-0.2.2-py3-none-any.whl
- Upload date:
- Size: 8.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a6bb849729b239ea0c8b56d9d4710be156e6ce388005325bdc965bb1a2a29c96
|
|
| MD5 |
2e3d2aa84f0cbc3616428f6400bb29ef
|
|
| BLAKE2b-256 |
9887395af06e2e587ec4e0b4dfd77f10ef0460fb9d49100c09fcefbba664020d
|