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.2.5/aliyundrive-webdav_1.2.5-1_aarch64_generic.ipk
wget https://github.com/messense/aliyundrive-webdav/releases/download/v1.2.5/luci-app-aliyundrive-webdav_1.2.5_all.ipk
wget https://github.com/messense/aliyundrive-webdav/releases/download/v1.2.5/luci-i18n-aliyundrive-webdav-zh-cn_1.2.5-1_all.ipk
opkg install aliyundrive-webdav_1.2.5-1_aarch64_generic.ipk
opkg install luci-app-aliyundrive-webdav_1.2.5_all.ipk
opkg install luci-i18n-aliyundrive-webdav-zh-cn_1.2.5-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.2.5

USAGE:
    aliyundrive-webdav [OPTIONS] --refresh-token <REFRESH_TOKEN>

OPTIONS:
        --cache-size <CACHE_SIZE>                Directory entries cache size [default: 1000]
        --cache-ttl <CACHE_TTL>                  Directory entries cache expiration time in seconds [default: 600]
        --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.2.5.tar.gz (636.7 kB view details)

Uploaded Source

Built Distributions

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

Uploaded Python 3 Windows ARM64

aliyundrive_webdav-1.2.5-py3-none-musllinux_1_1_x86_64.whl (3.0 MB view details)

Uploaded Python 3 musllinux: musl 1.1+ x86-64

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

Uploaded Python 3 musllinux: musl 1.1+ i686

aliyundrive_webdav-1.2.5-py3-none-musllinux_1_1_armv7l.whl (2.5 MB view details)

Uploaded Python 3 musllinux: musl 1.1+ ARMv7l

aliyundrive_webdav-1.2.5-py3-none-musllinux_1_1_aarch64.whl (2.8 MB view details)

Uploaded Python 3 musllinux: musl 1.1+ ARM64

aliyundrive_webdav-1.2.5-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.5 MB view details)

Uploaded Python 3 manylinux: glibc 2.17+ ARMv7l

aliyundrive_webdav-1.2.5-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.8 MB view details)

Uploaded Python 3 manylinux: glibc 2.17+ ARM64

aliyundrive_webdav-1.2.5-py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.whl (3.0 MB view details)

Uploaded Python 3 manylinux: glibc 2.5+ x86-64

aliyundrive_webdav-1.2.5-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.2.5-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.2.5-py3-none-macosx_10_7_x86_64.whl (2.6 MB view details)

Uploaded Python 3 macOS 10.7+ x86-64

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.2.5.tar.gz
  • Upload date:
  • Size: 636.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.2.5.tar.gz
Algorithm Hash digest
SHA256 a756e8ae038f7c77b490a1d3b4f348094102d08c21878eea549228f966d18ec4
MD5 35f9019e3b17088665924f5c9d762a08
BLAKE2b-256 4bc42203508ad72b1a85a75060ae78abda226701d22d349b7589b352bf3c7996

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.2.5-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/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.2.5-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 ec9e4e75dc8157a0d50c0ee429668c9017f3776562b1a43716735b908aab6baf
MD5 60b24516734159187a29628603581849
BLAKE2b-256 5c9f16c9bdf91170472df1e3c48b7e121f3da25b86a7b7da2329c8e0e2539a4b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.2.5-py3-none-musllinux_1_1_x86_64.whl
  • Upload date:
  • Size: 3.0 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/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.2.5-py3-none-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 b2ff1eda4540501b3379fe300c1a6db488e15a0846fe0b6fd6f3bed68651e908
MD5 a80aa62b3742dd05f7b1760db1670c33
BLAKE2b-256 29338359b321e0ec353008f009355551bc7ce04969aee2c4193915b56b16bb0b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.2.5-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/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.2.5-py3-none-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 76ee0addc5d3822e89319278a09ea5527197d8affcad028d3aef21f8fa99341d
MD5 22d61ae4ed9a2c4222b4e1d71c02dd86
BLAKE2b-256 40b91c5248d6565f8517f75e526d0fb935275e9cd6d640124ccf67ed357b72b8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.2.5-py3-none-musllinux_1_1_armv7l.whl
  • Upload date:
  • Size: 2.5 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/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.2.5-py3-none-musllinux_1_1_armv7l.whl
Algorithm Hash digest
SHA256 48b451e89bc6de5d0e24c56865a014148a9d4f60eb85e4b97f84bb8572d39283
MD5 6fbd2ffdeb88d154f05ebd872bbdac9e
BLAKE2b-256 d7852164e4a5e68c478fe55f24a7a297d71b901b885454ba0897e13206bf1b36

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.2.5-py3-none-musllinux_1_1_aarch64.whl
  • Upload date:
  • Size: 2.8 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/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.2.5-py3-none-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 f2b4b16ebb03d1a190c49f8da0686744800716561939f0a8b9e98b18510286c1
MD5 b93ed454255b2494ba4c2dba7ce6c0ba
BLAKE2b-256 cf7cd5151d42fac22e1127cfec58cee983ac7ae6f442116b3ac6fe1a47992b8b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.2.5-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
  • Upload date:
  • Size: 2.5 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/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.2.5-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 67672c3f8e69176b5e1ead5450aca226cc49efe2b44ff86995e94600056a5cb5
MD5 bb2e2908d443e43dea241c2e24fd1c7c
BLAKE2b-256 25278d5739d953242d434296e3b9335de4254e0fbaaf79e87cac5584b6206605

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.2.5-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
  • Upload date:
  • Size: 2.8 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/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.2.5-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 33972241b8e2362848774bdf86f24e49cddb8e611fbf2bb4960b262468db796d
MD5 8594f6f00b4e40b6d0be2eeab72875c7
BLAKE2b-256 b80a57bca58d0c6a6163c1a669b341b9e1a4f348fd920f36e7fab8fbb8700507

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.2.5-py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.whl
  • Upload date:
  • Size: 3.0 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/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.2.5-py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 e2386db98ed42157c60caa56b07e159910d67c9c61c4cffc22dc2f240bc6bcda
MD5 4272729eda481c81122ff3e1f9cdd418
BLAKE2b-256 559e889a70a6968b610c4ac9f309d501ce1d597b34e1d249109e4f0a71496a03

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.2.5-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/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.2.5-py3-none-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 69a3803d88953b2363fce1e7a0ba458b9d6d0b6c9f07fa87057949011b69471c
MD5 ce25843ca561fcbe174a48a068f8e635
BLAKE2b-256 aa5ad942284321ddc17f3bfd2a360c36460f6af9359c8d1d21ce216685c03876

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.2.5-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/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.2.5-py3-none-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 4e76ba60d0b164fa2683cfab13b4ea1d54e66b0a6453df70192208df5f616334
MD5 249ef8f1f55e84e8afb7c27d23ab1ecd
BLAKE2b-256 c860bb50427ec9584e1ff8aac6a9f163b430bcc637fbbe59fbfb0b716c25cf48

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.2.5-py3-none-macosx_10_7_x86_64.whl
  • Upload date:
  • Size: 2.6 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/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for aliyundrive_webdav-1.2.5-py3-none-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 5ff7911ac3360b4234d3023b328e4ec557fa71d30a99ce168d80cae84dfeb5bb
MD5 422fe5a2a7c2eec7df40078ba354179e
BLAKE2b-256 393a932b8d8822a59f6a81e95c097740a58d35c254db24bf5437608e702e42dd

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