Skip to main content

WebDAV server for AliyunDrive

Project description

aliyundrive-webdav

GitHub Actions PyPI Docker Image aliyundrive-webdav Crates.io

🚀 Help me to become a full-time open-source developer by sponsoring me on GitHub

阿里云盘 WebDAV 服务,主要使用场景为配合支持 WebDAV 协议的客户端 App 如 InfusenPlayer 等实现在电视上直接观看云盘视频内容, 支持上传文件,但受限于 WebDAV 协议不支持文件秒传。

如果你使用 Emby 或者 Jellyfin,也可以试试 aliyundrive-fuse 项目。

如果项目对你有帮助,请考虑捐赠支持项目持续维护。

安装

可以从 GitHub Releases 页面下载预先构建的二进制包, 也可以使用 pip 从 PyPI 下载:

pip install aliyundrive-webdav

如果系统支持 Snapcraft 比如 Ubuntu、Debian 等,也可以使用 snap 安装:

sudo snap install aliyundrive-webdav

OpenWrt 路由器

GitHub Releases 中有预编译的 ipk 文件, 目前提供了 aarch64/arm/mipsel/x86_64/i686 等架构的版本,可以下载后使用 opkg 安装,以 nanopi r4s 为例:

wget https://github.com/messense/aliyundrive-webdav/releases/download/v1.3.0/aliyundrive-webdav_1.3.0-1_aarch64_generic.ipk
wget https://github.com/messense/aliyundrive-webdav/releases/download/v1.3.0/luci-app-aliyundrive-webdav_1.3.0_all.ipk
wget https://github.com/messense/aliyundrive-webdav/releases/download/v1.3.0/luci-i18n-aliyundrive-webdav-zh-cn_1.3.0-1_all.ipk
opkg install aliyundrive-webdav_1.3.0-1_aarch64_generic.ipk
opkg install luci-app-aliyundrive-webdav_1.3.0_all.ipk
opkg install luci-i18n-aliyundrive-webdav-zh-cn_1.3.0-1_all.ipk

其它 CPU 架构的路由器可在 GitHub Releases 页面中查找对应的架构的主程序 ipk 文件下载安装, 常见 OpenWrt 路由器 CPU 架构如下表(欢迎补充):

路由器 CPU 架构
nanopi r4s aarch64_generic
小米 AX3600 aarch64_cortex-a53
斐讯 N1 盒子 aarch64_cortex-a53
Newifi D2 mipsel_24kc
Pogoplug arm_mpcore

Tips: 不清楚 CPU 架构类型可通过运行 opkg print-architecture 命令查询。

OpenWrt 配置界面

Koolshare 梅林固件

GitHub Releases 中有预编译包 aliyundrivewebdav-merlin-arm*.tar.gz , 目前提供了旧的 arm380 和兼容 arm384/386 固件的版本,可在下载后在软件中心离线安装。

梅林配置界面

Docker 运行

docker run -d --name=aliyundrive-webdav --restart=unless-stopped -p 8080:8080 \
  -v /etc/aliyundrive-webdav/:/etc/aliyundrive-webdav/ \
  -e REFRESH_TOKEN='your refresh token' \
  -e WEBDAV_AUTH_USER=admin \
  -e WEBDAV_AUTH_PASSWORD=admin \
  messense/aliyundrive-webdav

其中,REFRESH_TOKEN 环境变量为你的阿里云盘 refresh_tokenWEBDAV_AUTH_USERWEBDAV_AUTH_PASSWORD 为连接 WebDAV 服务的用户名和密码。

QNAP 威联通 NAS

QNAP 插件

qnap-aliyunpan-webdav by @iranee.

ContainerStation (Docker)

管理员登陆 NAS 后安装 ContainerStation 并启动服务,在 Management (管理) 标签中 Create Application (新建应用),配置如下

version: '3.3'
services:
  aliyundrive-webdav:
    container_name: aliyundrive-webdav
    restart: unless-stopped
    ports:
      - '8080:8080'
    environment:
      - 'REFRESH_TOKEN=mytoken...'
    image: messense/aliyundrive-webdav

其中 REFRESH_TOKEN 文档最下面说明;:8080 网盘访问映射端口,可以按需改为其他的。

点击 Create (创建)后启动,访问 http://nas地址:8080/ 即可看到你网盘的自动生成索引网页文件。

参考文档

命令行用法

$ aliyundrive-webdav --help
aliyundrive-webdav 1.3.0

USAGE:
    aliyundrive-webdav [OPTIONS]

OPTIONS:
        --cache-size <CACHE_SIZE>                Directory entries cache size [default: 1000]
        --cache-ttl <CACHE_TTL>                  Directory entries cache expiration time in seconds [default: 600]
	--debug                                  Enable debug log
        --domain-id <DOMAIN_ID>                  Aliyun PDS domain id
    -h, --help                                   Print help information
        --host <HOST>                            Listen host [env: HOST=] [default: 0.0.0.0]
    -I, --auto-index                             Automatically generate index.html
        --no-trash                               Delete file permanently instead of trashing it
    -p, --port <PORT>                            Listen port [env: PORT=] [default: 8080]
    -r, --refresh-token <REFRESH_TOKEN>          Aliyun drive refresh token [env: REFRESH_TOKEN=]
        --read-only                              Enable read only mode
        --root <ROOT>                            Root directory path [default: /]
    -S, --read-buffer-size <READ_BUFFER_SIZE>    Read/download buffer size in bytes, defaults to 10MB [default: 10485760]
        --tls-cert <TLS_CERT>                    TLS certificate file path [env: TLS_CERT=]
        --tls-key <TLS_KEY>                      TLS private key file path [env: TLS_KEY=]
    -U, --auth-user <AUTH_USER>                  WebDAV authentication username [env: WEBDAV_AUTH_USER=]
    -V, --version                                Print version information
    -w, --workdir <WORKDIR>                      Working directory, refresh_token will be stored in there if specified
    -W, --auth-password <AUTH_PASSWORD>          WebDAV authentication password [env: WEBDAV_AUTH_PASSWORD=]

注意:TLS/HTTPS 暂不支持 MIPS 架构。

获取 refresh_token

  • 自动获取: 登录阿里云盘后,控制台粘贴 JSON.parse(localStorage.token).refresh_token

  • 手动获取: 登录阿里云盘后,可以在开发者工具 -> Application -> Local Storage 中的 token 字段中找到。
    注意:不是复制整段 JSON 值,而是 JSON 里 refresh_token 字段的值,如下图所示红色部分: refresh token

License

This work is released under the MIT license. A copy of the license is provided in the LICENSE file.

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.

Source Distribution

aliyundrive_webdav-1.3.0.tar.gz (638.2 kB view details)

Uploaded Source

Built Distributions

aliyundrive_webdav-1.3.0-py3-none-win_arm64.whl (2.0 MB view details)

Uploaded Python 3 Windows ARM64

aliyundrive_webdav-1.3.0-py3-none-musllinux_1_1_x86_64.whl (2.9 MB view details)

Uploaded Python 3 musllinux: musl 1.1+ x86-64

aliyundrive_webdav-1.3.0-py3-none-musllinux_1_1_i686.whl (2.8 MB view details)

Uploaded Python 3 musllinux: musl 1.1+ i686

aliyundrive_webdav-1.3.0-py3-none-musllinux_1_1_armv7l.whl (2.4 MB view details)

Uploaded Python 3 musllinux: musl 1.1+ ARMv7l

aliyundrive_webdav-1.3.0-py3-none-musllinux_1_1_aarch64.whl (2.7 MB view details)

Uploaded Python 3 musllinux: musl 1.1+ ARM64

aliyundrive_webdav-1.3.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.4 MB view details)

Uploaded Python 3 manylinux: glibc 2.17+ ARMv7l

aliyundrive_webdav-1.3.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.7 MB view details)

Uploaded Python 3 manylinux: glibc 2.17+ ARM64

aliyundrive_webdav-1.3.0-py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.whl (2.9 MB view details)

Uploaded Python 3 manylinux: glibc 2.5+ x86-64

aliyundrive_webdav-1.3.0-py3-none-manylinux_2_5_i686.manylinux1_i686.whl (2.8 MB view details)

Uploaded Python 3 manylinux: glibc 2.5+ i686

aliyundrive_webdav-1.3.0-py3-none-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl (5.0 MB view details)

Uploaded Python 3 macOS 10.9+ universal2 (ARM64, x86-64) macOS 10.9+ x86-64 macOS 11.0+ ARM64

aliyundrive_webdav-1.3.0-py3-none-macosx_10_7_x86_64.whl (2.5 MB view details)

Uploaded Python 3 macOS 10.7+ x86-64

File details

Details for the file aliyundrive_webdav-1.3.0.tar.gz.

File metadata

  • Download URL: aliyundrive_webdav-1.3.0.tar.gz
  • Upload date:
  • Size: 638.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.3.0.tar.gz
Algorithm Hash digest
SHA256 03c02f1be945189e35339b700696fee942fd86459ab8867ad9341e04cc5b121a
MD5 59287ad497e08c4406b50e8accc7fe73
BLAKE2b-256 7c919c75944a2ce699495e24f076209a8d36d50046dc177491eb3ad7ccb24a4f

See more details on using hashes here.

File details

Details for the file aliyundrive_webdav-1.3.0-py3-none-win_arm64.whl.

File metadata

  • Download URL: aliyundrive_webdav-1.3.0-py3-none-win_arm64.whl
  • Upload date:
  • Size: 2.0 MB
  • Tags: Python 3, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.3.0-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 d62602f74394108241e7be2d6f570dd8aec1709a204181c75f503b57d8509d43
MD5 4752165d834bd207750e2e2927d25be5
BLAKE2b-256 e331c14c65098f843417cebf1f3befdad9c3136f8319e3b36056fc72989eb9f5

See more details on using hashes here.

File details

Details for the file aliyundrive_webdav-1.3.0-py3-none-musllinux_1_1_x86_64.whl.

File metadata

  • Download URL: aliyundrive_webdav-1.3.0-py3-none-musllinux_1_1_x86_64.whl
  • Upload date:
  • Size: 2.9 MB
  • Tags: Python 3, musllinux: musl 1.1+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.3.0-py3-none-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 38dd4e0faca32218a691a7f7b0d2f497dec6f4540dfc67ab787dc0e54cce32e1
MD5 3cc84586ae03af314666358acee45035
BLAKE2b-256 7909ec8b9961850e82e397660c42db3b7099604e09e6a7a9f12536725105ed49

See more details on using hashes here.

File details

Details for the file aliyundrive_webdav-1.3.0-py3-none-musllinux_1_1_i686.whl.

File metadata

  • Download URL: aliyundrive_webdav-1.3.0-py3-none-musllinux_1_1_i686.whl
  • Upload date:
  • Size: 2.8 MB
  • Tags: Python 3, musllinux: musl 1.1+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.3.0-py3-none-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 72f11438c77443ddaa7e54492d21becb2ead40d97292a4f77a2a0382696aa26d
MD5 06e6dc7736288d9d46b298f21c3c32c0
BLAKE2b-256 0f323c1cf59bd23d77c0638ab641e40322930926ee95af5d7794266e99362f20

See more details on using hashes here.

File details

Details for the file aliyundrive_webdav-1.3.0-py3-none-musllinux_1_1_armv7l.whl.

File metadata

  • Download URL: aliyundrive_webdav-1.3.0-py3-none-musllinux_1_1_armv7l.whl
  • Upload date:
  • Size: 2.4 MB
  • Tags: Python 3, musllinux: musl 1.1+ ARMv7l
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.3.0-py3-none-musllinux_1_1_armv7l.whl
Algorithm Hash digest
SHA256 f26e9975a71c6470910b4b347dabe759546c36d8e44e148ad558a7a025fc8b4f
MD5 d1a227ba8635555fb23060f06bd00761
BLAKE2b-256 c7732d2a5b10fad4918ac29daa9ba0c4820e48e35bd77611954bb9dcb9f6e944

See more details on using hashes here.

File details

Details for the file aliyundrive_webdav-1.3.0-py3-none-musllinux_1_1_aarch64.whl.

File metadata

  • Download URL: aliyundrive_webdav-1.3.0-py3-none-musllinux_1_1_aarch64.whl
  • Upload date:
  • Size: 2.7 MB
  • Tags: Python 3, musllinux: musl 1.1+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.3.0-py3-none-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 d10e71b5ddcf627b615f9f871ab76fce7b0e06105edb9f3575341298bd26101d
MD5 29894ebe3da6a4daedceed7d85dfa1b9
BLAKE2b-256 e34679ac5124dc7c5ada833a35af64fef73571ff1737fbcc80a2a0dd0641b5ee

See more details on using hashes here.

File details

Details for the file aliyundrive_webdav-1.3.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

  • Download URL: aliyundrive_webdav-1.3.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
  • Upload date:
  • Size: 2.4 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ARMv7l
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.3.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 ab46dd247c3854be0245ac1ac9eb61972fdf6d3942b5359a265ae5d137073d91
MD5 f1199080632b44a99027a4e5c51b547b
BLAKE2b-256 49a38fbaaa8e3c29e0e44c2b603dd0ece0b228f77eca9c46a67646941e27a00f

See more details on using hashes here.

File details

Details for the file aliyundrive_webdav-1.3.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

  • Download URL: aliyundrive_webdav-1.3.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
  • Upload date:
  • Size: 2.7 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.3.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7315e8a810491532355280255ac87692853a5909bc1c65f855acfd1311c9121f
MD5 e07744c7292d866c4acc2dd75135a8a4
BLAKE2b-256 44fe5d2a2b7ae9fdbbb2d52bf7b920e1cdebef900039478a4f4e1ae814f2dde3

See more details on using hashes here.

File details

Details for the file aliyundrive_webdav-1.3.0-py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.whl.

File metadata

  • Download URL: aliyundrive_webdav-1.3.0-py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.whl
  • Upload date:
  • Size: 2.9 MB
  • Tags: Python 3, manylinux: glibc 2.5+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.3.0-py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 8e8d327c1b590b5945fc952c2dad58be76fb38b20596cee9878487437a6add36
MD5 e46474d2b922e5af8ca96d910c4fe406
BLAKE2b-256 5ad85b6496a2552f0810b4e36a0d06c753ea1c455f6f6bd79240146a040f5c1a

See more details on using hashes here.

File details

Details for the file aliyundrive_webdav-1.3.0-py3-none-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

  • Download URL: aliyundrive_webdav-1.3.0-py3-none-manylinux_2_5_i686.manylinux1_i686.whl
  • Upload date:
  • Size: 2.8 MB
  • Tags: Python 3, manylinux: glibc 2.5+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.3.0-py3-none-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 aa793c3c106a9df27f0db1c49ac495fb3a67803fab6072a0d1488021a93196eb
MD5 85f491d7ca0bce1284d7a58f847b51aa
BLAKE2b-256 ee4fa9b11b1ddbc2a45ac71c29377bd5f71c7a472ee65a58c6d685c67dca8210

See more details on using hashes here.

File details

Details for the file aliyundrive_webdav-1.3.0-py3-none-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl.

File metadata

  • Download URL: aliyundrive_webdav-1.3.0-py3-none-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
  • Upload date:
  • Size: 5.0 MB
  • Tags: Python 3, macOS 10.9+ universal2 (ARM64, x86-64), macOS 10.9+ x86-64, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.3.0-py3-none-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 aa59622917362f7dbd2b415dabc10d94ac6984ccebb1c351dd8bb0e20c44df11
MD5 22e0ebe3d3ea66d0f5c6390b0524f9d9
BLAKE2b-256 c75b38984442f7357c249f49d9303e9519309a1c1cb992ee9340685e4cd0fe2b

See more details on using hashes here.

File details

Details for the file aliyundrive_webdav-1.3.0-py3-none-macosx_10_7_x86_64.whl.

File metadata

  • Download URL: aliyundrive_webdav-1.3.0-py3-none-macosx_10_7_x86_64.whl
  • Upload date:
  • Size: 2.5 MB
  • Tags: Python 3, macOS 10.7+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.3.0-py3-none-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 819e5beca9bbe215b93635860fc83b8c53c3b937236a1de0e0e9fa55656fb53b
MD5 38e510626abe23bd87152bdb75bc689f
BLAKE2b-256 4ce5288ca7b942841914f7eef5b928873d8e4ee88b20b371017de76e672132ff

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page