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

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

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

This version

0.5.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-0.5.2.tar.gz (631.0 kB view details)

Uploaded Source

Built Distributions

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

Uploaded Python 3 Windows x86-64

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

Uploaded Python 3 Windows x86

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

Uploaded Python 3 musllinux: musl 1.1+ i686

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

Uploaded Python 3 musllinux: musl 1.1+ ARMv7l

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

Uploaded Python 3 musllinux: musl 1.1+ ARM64

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

File metadata

  • Download URL: aliyundrive_webdav-0.5.2.tar.gz
  • Upload date:
  • Size: 631.0 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.2.tar.gz
Algorithm Hash digest
SHA256 ee167a479665b42bc5010ca837ffd7abc49012f75c9a7c9023f7d0a72459b644
MD5 1de7258a5cc0d2aa58ae4181442e4e11
BLAKE2b-256 ffbfae7a93aa29379143518352cce8931671fda005ba3e4cddffba8110a8aa83

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.5.2-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.2-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 de885a5e8afaac9b4ea13a85f37ba228c3ef90b61cd86aadcb6329d6a51ab6b0
MD5 1d99a78f35f49b6d70e23d5ffce323f1
BLAKE2b-256 7025009118bf9024c8f978589c6200830f83b8efac403bb16d34f55643cf3d96

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.5.2-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.2-py3-none-win32.whl
Algorithm Hash digest
SHA256 32011f1a626b8a0fd96db87ccde24e297380433d63bae4953b8fbf59444ae989
MD5 d3b284574eb91ece091f8ba6ea457a27
BLAKE2b-256 fd791293c8da7f7f4599d134d5c10a05e748a78fe5718c170a82a5ceda57b260

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.5.2-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.2-py3-none-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 506f3ea8e4989d93472eef86e456f3eba6c198faf4452672d75ba27d73cfb30d
MD5 e568a68d0e468208a6b04af4bef64150
BLAKE2b-256 1fd5751b1c6e3c7c20516ad13de1ffc4f27bd998210ae4a0be77cc6640fb932b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.5.2-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.2-py3-none-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 6f026e4abcf0f2c135e21e04f80b94405332773aa997842038873fd025ce31cd
MD5 9dda8298a85b4397526cf288ad7f6876
BLAKE2b-256 98da1d1224273b51d68263bc208365c06b20dd64e7606def4b770129c3dc0ec0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.5.2-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.2-py3-none-musllinux_1_1_armv7l.whl
Algorithm Hash digest
SHA256 451b0ab20e9a580b468ab8334f673574eefe7dd64964a382dd80b02cd067bdfc
MD5 87f5582c757f981114431db2f3e329f8
BLAKE2b-256 7be4c76a4ea37fff5534dc0438f669860f8219c009c00d35ae0d3f425f12c8e1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.5.2-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.2-py3-none-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 c6fff8550acdf6e51c9024f389d45ab0b101bf88fe42069b69ec9e94c620230a
MD5 4b5104880009a518e796d93d7b719c6c
BLAKE2b-256 3d3f82a17ab55e5935a543ac349097c3c348d21d11e070eaf543c1398ac77965

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-0.5.2-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 4a96d540c70eaf08201b1ae3e8dc2dcf5d64ecc49bb246f8ac7d08a4aafbcbde
MD5 14e002129f5d7fcc4543982e9b9cf1b6
BLAKE2b-256 5555a3037cef8b41784c91df2e8a29333d16f98fed8688a69ae4e0a876eb92a0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-0.5.2-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 3a50c2c4dab0a3589aab5bbc557d857191a1d0afba03ea58b3c3d1ee8032ba5c
MD5 3f1d7589ec03eff9208a294a3d5879d1
BLAKE2b-256 49bdb9416a662e7b7c3df83359c25b910c768581662c022c18d3bbf62fa0e400

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-0.5.2-py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 22105535ae1fb0b5afa18b487644619ac73b72fc6efb4adda277762507eec051
MD5 0358b5539751fdc1a4946f8a37b48ee7
BLAKE2b-256 6822638fc52659f5ca82a5908ec9aeb376b60fbadfe39326e395c6c29da419ce

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-0.5.2-py3-none-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 5275cd1e87be5344566926417dbae49f6b69d48669f121a8572dcc1ba24ab10b
MD5 266db164af82e48fb186f38fa7d4ca1b
BLAKE2b-256 4ece33db322d3533a2e1d40b4c447703eb52de70cc8f2dbad3203ac46db889dc

See more details on using hashes here.

File details

Details for the file aliyundrive_webdav-0.5.2-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.2-py3-none-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 3ff5ed47d816011d1723a71bacc1a5cff242539f4f5e06fbdfda359191979356
MD5 2b81344aee1b61b7553067efebbc2aa1
BLAKE2b-256 7ade640253b0b1a49c00b08c8de39ed217b9ae5a3cc7792c083a73e78b24ce33

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.5.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.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.2-py3-none-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 99c413199533d7ceece9fc3de6e025e4106c39e50f34c6a20e287116d58bb031
MD5 6692382341eb252bf33a1d90d0f7e85f
BLAKE2b-256 a2ef18e1dfde52d5709614fc968226b285c4e364d472ae65406a133551c73599

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