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

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

This version

1.2.2

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.2.tar.gz (636.5 kB view details)

Uploaded Source

Built Distributions

aliyundrive_webdav-1.2.2-py3-none-win_amd64.whl (2.6 MB view details)

Uploaded Python 3 Windows x86-64

aliyundrive_webdav-1.2.2-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.2-py3-none-musllinux_1_1_i686.whl (2.8 MB view details)

Uploaded Python 3 musllinux: musl 1.1+ i686

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

Uploaded Python 3 musllinux: musl 1.1+ ARMv7l

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

Uploaded Python 3 musllinux: musl 1.1+ ARM64

aliyundrive_webdav-1.2.2-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.2.2-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.2.2-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.2-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.2-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.2-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.2.2.tar.gz.

File metadata

  • Download URL: aliyundrive_webdav-1.2.2.tar.gz
  • Upload date:
  • Size: 636.5 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.10.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.2.tar.gz
Algorithm Hash digest
SHA256 b43e70ecb8b2f765f6ad917c25e08823e9816beaad9b4729918c0cdb114b25ae
MD5 158a03b060fd0a9b43b8c39fe9340f52
BLAKE2b-256 24264b766fbeded86ba5ae25dd8e92371eb9463be7a6a9bac9ae8451280683aa

See more details on using hashes here.

File details

Details for the file aliyundrive_webdav-1.2.2-py3-none-win_amd64.whl.

File metadata

  • Download URL: aliyundrive_webdav-1.2.2-py3-none-win_amd64.whl
  • Upload date:
  • Size: 2.6 MB
  • Tags: Python 3, Windows 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.10.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.2-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 352eae3e4ed60755edb4c52e73323d0e66946371a36e37150b5903079b25eae8
MD5 15282d147e3625b08af7789aa3d9488f
BLAKE2b-256 bcf1e2d321fb37673e3ed1d24e4b2332e9723cc7acd3709bd7220b38b6dbef7a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.2.2-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.10.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.2-py3-none-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 be2928966e7f15c7aed2f34dd915897e6c4366efc62b2e817a90ff850118e8d1
MD5 f0bc5109d317d899980bfd347d9cfbd0
BLAKE2b-256 43af17c1ef6c19189f7ce1231be0603e61336eadec00f4fd94b49196dbe682db

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.2.2-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.10.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.2-py3-none-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 cc4e63c9ed92a30a085a7ae58655e064620e27d5d89988d5816e7ed6b339b73f
MD5 568d6b3e13c277541e8842fcadf5a675
BLAKE2b-256 5f0276e2633f13e5d52e041c866da2e8aa03a9c89293e5c9c8c64de454d19b9f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.2.2-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/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.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.2-py3-none-musllinux_1_1_armv7l.whl
Algorithm Hash digest
SHA256 d6b2dd08c025588991ba9791c939006595444a10e8a8c8aa5c3acb35d9abce99
MD5 3b19e3d4e49f58635bfb134b1870c0ce
BLAKE2b-256 173d89b88976b7f33822147e0771e02952be3d539778a1d1785b21eebc4bf9af

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.2.2-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/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.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.2-py3-none-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 68ffc7dcf268a5d324114d4bd63e25492d501333a1b1fe72901762ec3e72bb6c
MD5 52395c9d66c377325a05dff613153eab
BLAKE2b-256 a81c3c441f097e45224894666f60fee44d0242d04279b9cd703a73aebe3979ce

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.2.2-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/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.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.2-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 5d6ac5c87b29567831e23fc1b9bf40db4c708caeb96024133ef63254e7ddbef3
MD5 b165f00df90b5e6e488025cb9c2b2ff5
BLAKE2b-256 aefc9601fc93ad3f6eb29e1a138c7809e2042723f449a6d630f80ee478679a14

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.2.2-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/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.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.2-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 263f12eb5e6a2ebe3fec029626d03e2f7e06871c368ed6e3d49ada5cc4ad93b1
MD5 69b9e870077673c8b07a225e8e300b92
BLAKE2b-256 fca1510ab17a1ee7367146a4f85f74f02f390ddb06a8f43694d3219483c48567

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.2.2-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.10.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.2-py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 fe5208f434313eaf2cdf1b63a46b6e753703bd7fa178439f3aba68490fceadf4
MD5 d142dbe7ab1d482929b56f9825b98a1b
BLAKE2b-256 ce7dbec800c1bafb9b33c45b26c87d6dda2e13d8e98f94b5c42ca9d97abb4a70

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.2.2-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.10.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.2-py3-none-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 fedf86339086b0e46a6e999504aa6be1a5f9ada7a5e98bbacd5f81bea566bbcb
MD5 e1f3bcdd9dd5a83cb847e85256bdb893
BLAKE2b-256 dcc7c53f6fef63dd1cc209b8998da6e873e5dc2ad6beb3a4ae193eb66c21c282

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.2.2-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.10.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.2-py3-none-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 0c01d402a627676f29316afa0274fe89d9da8255568c91855d0d4437bcbb5122
MD5 5aa87fef7d9e9d0c82f668b1a0489022
BLAKE2b-256 974436fd1a6d64d35a05e61589898895a2268417e7ff27cb73bbbf39793606a5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.2.2-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/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.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.2-py3-none-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 3819efe5fe6486ddccfd46049b26bd5c5fef26b58a4e3b03f5d9a1638cad80e3
MD5 3db277b06c142e0d6c385cfff7371b00
BLAKE2b-256 91252c1713e0ce5902fc5d89e61a655d6dbfedccbeb05d4144402f75f220f1b4

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