Skip to main content

WebDAV server for AliyunDrive

Project description

aliyundrive-webdav

GitHub Actions PyPI Docker Image

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

安装

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

pip 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/v0.5.1/aliyundrive-webdav_0.5.1_aarch64_generic.ipk
wget https://github.com/messense/aliyundrive-webdav/releases/download/v0.5.1/luci-app-aliyundrive-webdav_0.5.1_all.ipk
wget https://github.com/messense/aliyundrive-webdav/releases/download/v0.5.1/luci-i18n-aliyundrive-webdav-zh-cn_0.5.1-1_all.ipk
opkg install aliyundrive-webdav_0.5.1_aarch64_generic.ipk
opkg install luci-app-aliyundrive-webdav_0.5.1_all.ipk
opkg install luci-i18n-aliyundrive-webdav-zh-cn_0.5.1-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

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

管理员登陆 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 0.5.1

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

FLAGS:
    -I, --auto-index    Automatically generate index.html
    -h, --help          Prints help information
        --no-trash      Delete file permanently instead of trashing it
    -V, --version       Prints version information

OPTIONS:
    -W, --auth-password <auth-password>          WebDAV authentication password [env: WEBDAV_AUTH_PASSWORD=]
    -U, --auth-user <auth-user>                  WebDAV authentication username [env: WEBDAV_AUTH_USER=]
        --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
        --host <host>                            Listen host [env: HOST=]  [default: 0.0.0.0]
    -p, --port <port>                            Listen port [env: PORT=]  [default: 8080]
    -S, --read-buffer-size <read-buffer-size>
            Read/download buffer size in bytes, defaults to 10MB [default: 10485760]

    -r, --refresh-token <refresh-token>          Aliyun drive refresh token [env: REFRESH_TOKEN=]
        --root <root>                            Root directory path [default: /]
    -w, --workdir <workdir>                      Working directory, refresh_token will be stored in there if specified

获取 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-0.5.1.tar.gz (630.8 kB view details)

Uploaded Source

Built Distributions

aliyundrive_webdav-0.5.1-py3-none-win_amd64.whl (2.5 MB view details)

Uploaded Python 3 Windows x86-64

aliyundrive_webdav-0.5.1-py3-none-win32.whl (2.3 MB view details)

Uploaded Python 3 Windows x86

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

Uploaded Python 3 musllinux: musl 1.1+ x86-64

aliyundrive_webdav-0.5.1-py3-none-musllinux_1_1_i686.whl (2.7 MB view details)

Uploaded Python 3 musllinux: musl 1.1+ i686

aliyundrive_webdav-0.5.1-py3-none-musllinux_1_1_armv7l.whl (2.3 MB view details)

Uploaded Python 3 musllinux: musl 1.1+ ARMv7l

aliyundrive_webdav-0.5.1-py3-none-musllinux_1_1_aarch64.whl (2.6 MB view details)

Uploaded Python 3 musllinux: musl 1.1+ ARM64

aliyundrive_webdav-0.5.1-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.3 MB view details)

Uploaded Python 3 manylinux: glibc 2.17+ ARMv7l

aliyundrive_webdav-0.5.1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.6 MB view details)

Uploaded Python 3 manylinux: glibc 2.17+ ARM64

aliyundrive_webdav-0.5.1-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-0.5.1-py3-none-manylinux_2_5_i686.manylinux1_i686.whl (2.7 MB view details)

Uploaded Python 3 manylinux: glibc 2.5+ i686

aliyundrive_webdav-0.5.1-py3-none-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl (4.8 MB view details)

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

aliyundrive_webdav-0.5.1-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-0.5.1.tar.gz.

File metadata

  • Download URL: aliyundrive_webdav-0.5.1.tar.gz
  • Upload date:
  • Size: 630.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for aliyundrive_webdav-0.5.1.tar.gz
Algorithm Hash digest
SHA256 7f61913dddf259418f1a39983e188d88f365d0a56ec7114f697ffda1c5cb89ba
MD5 f62cd2e86b15f9e8b6a85a81810ad7db
BLAKE2b-256 750b4a35e9e838965908e8bac3bb650839d0cacf9427aafd2835fd40c41d9218

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.5.1-py3-none-win_amd64.whl
  • Upload date:
  • Size: 2.5 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for aliyundrive_webdav-0.5.1-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 aca2f2121f0b093b0bd74bc3239513460ed232bda0ddde3ee9c1cbab7fa1b819
MD5 ba66aa6002f23a34658f24521f132353
BLAKE2b-256 cc5913ba31fea508f9797c6764a72e9e5a69c28490c5afa15654e0be9e720a54

See more details on using hashes here.

File details

Details for the file aliyundrive_webdav-0.5.1-py3-none-win32.whl.

File metadata

  • Download URL: aliyundrive_webdav-0.5.1-py3-none-win32.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: Python 3, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for aliyundrive_webdav-0.5.1-py3-none-win32.whl
Algorithm Hash digest
SHA256 7b2e4135e67ee0f4451c7a14c2fd4df4cf91310e1efd70ffd91a99db666d5d48
MD5 668fb6b022b906faa9a2fa483512b7f5
BLAKE2b-256 4bf976b7b584e5f81660e203bb5676f56629da257c50c97aa1528da7d0e89c51

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.5.1-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.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for aliyundrive_webdav-0.5.1-py3-none-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 bec5ea07318a1f556472cec36a533ab3c325d921f7168505d2378573e5f0ed5c
MD5 40e74c7387ce02b022c9bcac8ceffd16
BLAKE2b-256 dcbadad682f4986c67e275b9a432dcbe3ee91877a9eff09887564d7536cbcd9f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.5.1-py3-none-musllinux_1_1_i686.whl
  • Upload date:
  • Size: 2.7 MB
  • Tags: Python 3, musllinux: musl 1.1+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for aliyundrive_webdav-0.5.1-py3-none-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 daa4329ad1ca395008be25ee3586acdf56fa2488c6c33fefdbad1f982426ebc3
MD5 fe38b1b02f08f4e80450a875f5e18ece
BLAKE2b-256 d60e5cd06d4c995cd4c6e7880d05d4a9b718db028357ea2b8bf85e45f69cc01e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.5.1-py3-none-musllinux_1_1_armv7l.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: Python 3, musllinux: musl 1.1+ ARMv7l
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for aliyundrive_webdav-0.5.1-py3-none-musllinux_1_1_armv7l.whl
Algorithm Hash digest
SHA256 06758072acd4eb94796f73d460e58ddf6cebf6b66f5d13251052ea58d6b130b5
MD5 dc15922d982c8fb6b33e44ce3a4a7d63
BLAKE2b-256 5f810ed300b7a74ce85ab5318a498952bd4a71031c6f6ee94f2cb29b9bd40809

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.5.1-py3-none-musllinux_1_1_aarch64.whl
  • Upload date:
  • Size: 2.6 MB
  • Tags: Python 3, musllinux: musl 1.1+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for aliyundrive_webdav-0.5.1-py3-none-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 6e9c0a8b7b9bcf2142298d328f6a0c00649473e833438057d21056b253746889
MD5 99b64833ab61857efed128bbe72c7080
BLAKE2b-256 434e59b3856e7d999c50670fe7859b1212d3af083dbde0ab295cc161a5d9c05b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-0.5.1-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 83b42620b972c44a6d061aec372934533929b36897c171865d3cdf22dda925f1
MD5 7724137a492d708e0710004c402b19aa
BLAKE2b-256 4d15fd6a59901fe7bff24fa2dd2bc16e53179df2d85905f048f468adff3ba0ea

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-0.5.1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2fedefe559256459a82746d6fec52f74e880e141a29843e551c62640be231013
MD5 a34f5f59a992b37cb6458619ca8407da
BLAKE2b-256 44b0be4fa2a12c5b56b3701e4c603f14f1a8a0ba1f8f19e1b21858150b3c013f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-0.5.1-py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 d6842a77b7560c98746e604e30a9657a34942f659a97b403fdb3c296e5af5827
MD5 e0b8f1cab6f4acad5578640ddf10d68b
BLAKE2b-256 187d8decb30b4ef76083cacff63b7099b4c71121d72dc377c42c3d600231927c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-0.5.1-py3-none-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 4e66f4890266a9d23153972c1703ff178a132893c7f3caa78b686fb985431a10
MD5 15bbe9a304686af360123badcc8da229
BLAKE2b-256 c10c3574ce6e2f91896e7686d4ab44f00d16da3017b97ef8bd17673a9ca1af87

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-0.5.1-py3-none-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 dba79dd40cb7ba81331dbfb6bedb6f9694d44bc53abc04c69643fe5d0057adcd
MD5 c1420c20a5395815ebfa58492c8357bc
BLAKE2b-256 d9869692a9effa7c27c72447d43cd14f283b3ac1dd87f537b9bb016426fb2959

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.5.1-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.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for aliyundrive_webdav-0.5.1-py3-none-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 7942a1b9a171f86de22a9f791cfcff10ea633cfd2f9606e7dc50cf756a9a857e
MD5 1660e3f13b182bf00a3a5cfa7bbd7aca
BLAKE2b-256 31c60c64e913efc8a534c5a404b50fe1a2e3c3ebe5b0d367727698615d7dc502

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