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

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.5

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

Uploaded Source

Built Distributions

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

Uploaded Python 3 Windows x86-64

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

Uploaded Python 3 Windows x86

aliyundrive_webdav-0.4.5-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.5-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.5-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.4.5-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.5-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.5-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.5.tar.gz.

File metadata

  • Download URL: aliyundrive_webdav-0.4.5.tar.gz
  • Upload date:
  • Size: 629.2 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.5.tar.gz
Algorithm Hash digest
SHA256 04ad98b1272607151609e2a318a9a15174831823fecdef13c2f4332bd698428e
MD5 103f4a9b53b71891220141918c766e63
BLAKE2b-256 32027b218a4f36d857a43e9d6bc672bf361964942e240d7b124ddd63421c5151

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.4.5-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.5-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 f4cab1a569936f3a08600b2fd5ab45199f550d4bf14afc135fd60784228ef645
MD5 72eae95090130571af30959e95351a35
BLAKE2b-256 54da1b9e313590376c3a4339222b9f9c216a12d9843911587ea11e2f383c9cf5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.4.5-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.5-py3-none-win32.whl
Algorithm Hash digest
SHA256 f9574c54b41e5e118a033bfab7c44be3aaa5ef32f08da44331d11d2b609df42b
MD5 b1b538dbeb2bd940fd19dbb5c08f8851
BLAKE2b-256 0044f254f3d51a8160c1d554f42c00be4400af07117c3b17ef23e349e84bb953

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-0.4.5-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 d57800580013653266dcfe6f64effef29359bc69b1f4f97ff17a8eb02df3bcff
MD5 ad01acedcb5161ecb6365466ae1fd6ed
BLAKE2b-256 788a5042d1c75a74aefc81c676e63c69d8ba0b370c32156a75593b9ce51bfc89

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-0.4.5-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 962e515ee7c795d64f0156dd8c4d1e9efa4dc0b1a553b2d591f2bbc25573302a
MD5 109c3ee0e5b3101448074f6e22d49d87
BLAKE2b-256 e7ab7dd538941bd2c871f56448618013317cea17527f55f667ea5f55ed7e656c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-0.4.5-py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 aa1fd71c6f6763e90aadb85197208ebffe545c132c1572be055d43c4ea806810
MD5 f23724fe21328c8e3e9c8b2fd0960d03
BLAKE2b-256 c20e7390364eed3d47aa7174b9872c120a82dd83079a0bed9c26e66b78b54c26

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-0.4.5-py3-none-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 b0135d4dcbdd21fd5e8d583d983100df512b655c7965ee51895a5881f2db1c48
MD5 e225e6200ac8f077796cf05e29b21be4
BLAKE2b-256 69949b6de5b94c43897e3d42cea4c8c34ee42ade7d6bd14b2998e54401cb1d13

See more details on using hashes here.

File details

Details for the file aliyundrive_webdav-0.4.5-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.5-py3-none-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 7dbf5487a3b34df99bc7e545dff2e302cc4c75b31927648195cab025f50d2845
MD5 401e16716b2d2d8fdb46a268f76ab867
BLAKE2b-256 f7ba1a38be60c3aec858513feb8b3e38d2ac2d2e7c512cebc457b5edcae94883

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.4.5-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.5-py3-none-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 9e0a55ede0e50581faa0b004f9bb25ada98c172b76194601fc552528664186c5
MD5 4f0a3ab15db43c629c0e737dc2e683a9
BLAKE2b-256 9b0cd006624a2aa0d92337ac8e59d6590695ef302f7a9eafc03c31f09160e421

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