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

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]
        --host <host>                            Listen host [default: 0.0.0.0]
    -p, --port <port>                            Listen 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.4.6.tar.gz (629.5 kB view details)

Uploaded Source

Built Distributions

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

Uploaded Python 3 Windows x86-64

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

Uploaded Python 3 Windows x86

aliyundrive_webdav-0.4.6-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.4.6-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.5 MB view details)

Uploaded Python 3 manylinux: glibc 2.17+ ARM64

aliyundrive_webdav-0.4.6-py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.whl (2.8 MB view details)

Uploaded Python 3 manylinux: glibc 2.5+ x86-64

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

File metadata

  • Download URL: aliyundrive_webdav-0.4.6.tar.gz
  • Upload date:
  • Size: 629.5 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.4.6.tar.gz
Algorithm Hash digest
SHA256 4b1b8d54cf22212e89e6ec9d833a32dad092b1bac91bb90ebb806c21cd093cf3
MD5 c1c9fbdefad091525934daa7da9f7239
BLAKE2b-256 b4b64fc7790bc2b6f2df72e421f88589746569d9588999aa0d51e95a812b76d9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.4.6-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.4.6-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 033f0f25b9d6b5bab15d485c1e9aff16e182d105377243234f62c8cceccf92fc
MD5 115760edb37d631e43f2a4c4bf749591
BLAKE2b-256 4307e967e28a71ee7737cbfc7c2415ba3d245d3b015337c80b84b92cb3586375

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.4.6-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.4.6-py3-none-win32.whl
Algorithm Hash digest
SHA256 05d2c482461a6050632bd0a544430f7b9d7cd7bf0a833db39b7fa77479447479
MD5 d455f774f75d5dc7ef19acf560215cf2
BLAKE2b-256 8301d7c4642358410bbec3d8dcc514b78af640f57ad65e06d2f1d3a883bc0e75

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-0.4.6-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 e62d89c4d818bbcb1c47483b674dcd2179db723426148046a20d8e2452a666f5
MD5 d3a00f790f21da3c4f3460cfaa7ce07c
BLAKE2b-256 13fd2f9a2a3d044093fe6bdde684153d8dedcc0f2c4b8c28c86e2daee68160dd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-0.4.6-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f32429237964ab6f96e27f685fdf1addadaad37efa21f6326230daa11cef3ea3
MD5 35f7f742fe493865180f785ae2e946f8
BLAKE2b-256 5889d92e1b50f1b4a4c4221f3b72c1a56a585cd9d5afb498c693973f0be17eac

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-0.4.6-py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 b1dc155714924aac4dd24829c0c260192bf09461e868771b9808c800dfc655e8
MD5 b2229deca9b7be8f5ba570798d35a2de
BLAKE2b-256 932dad30b96b72f5433a76075b495bdcbed852058a66f2cf9a6be9f7fe7deb5a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-0.4.6-py3-none-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 3caccdc7d1006449ce5273e232ffdb974fefd43300f03ea64df66f6d05b6870d
MD5 bb8dbdab15622562b47a7f2081d6aa5f
BLAKE2b-256 b3344dc95fb3e2959de044a26a5463c4f3b02c3d7625a0752f6e63ae744b7c6e

See more details on using hashes here.

File details

Details for the file aliyundrive_webdav-0.4.6-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.4.6-py3-none-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 1347d9da72da19e9cc985ca3f2bb3d5f7871676dcae0fb8848228ce4799c35f5
MD5 9fb45d83bc9ede7fceca99c9f4620e52
BLAKE2b-256 a8b08be3032aaa951b69886e48e5614924dea815284cb6376b78da6d45deeb87

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.4.6-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.4.6-py3-none-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 f8f33c6c1ee4c9f62c54f7e7511ccab3069cb6848774882bc32de5bd272b70ee
MD5 e5aa1944353fc995069fe7c6e151e599
BLAKE2b-256 e38d8ffceb18195fa80f2ea3519ba9ea2ad4271b64051f50c1e868e80bbefe18

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