Skip to main content

WebDAV server for AliyunDrive

Project description

aliyundrive-webdav

GitHub Actions PyPI Docker Image aliyundrive-webdav

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

如果项目对你有帮助,请考虑捐赠支持项目持续维护。

安装

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

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

Uploaded Source

Built Distributions

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

Uploaded Python 3 Windows x86-64

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

Uploaded Python 3 Windows x86

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

Uploaded Python 3 musllinux: musl 1.1+ x86-64

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

Uploaded Python 3 musllinux: musl 1.1+ i686

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

Uploaded Python 3 musllinux: musl 1.1+ ARMv7l

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

Uploaded Python 3 musllinux: musl 1.1+ ARM64

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

Uploaded Python 3 manylinux: glibc 2.17+ ARMv7l

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

Uploaded Python 3 manylinux: glibc 2.17+ ARM64

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

Uploaded Python 3 manylinux: glibc 2.5+ i686

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

File metadata

  • Download URL: aliyundrive_webdav-1.0.0.tar.gz
  • Upload date:
  • Size: 632.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.8

File hashes

Hashes for aliyundrive_webdav-1.0.0.tar.gz
Algorithm Hash digest
SHA256 e4cb91a10159b8a98d5264d8fc50a1bf88a580e5b83d44ec12e787ff67da45dc
MD5 5a831f042108ef68b381fb77e7501010
BLAKE2b-256 ebb63574f66abf3ab298b8dd9dc822253032ed7c589f455d38064c781ded0bb5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.0.0-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.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.8

File hashes

Hashes for aliyundrive_webdav-1.0.0-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 cf58613e8f6127c39181711da69ee299a3dcbc03cb6d7b0ed2fa4d3de79f9e50
MD5 7108c1583184310ffdc4759f35b95784
BLAKE2b-256 6bb5b766e7dcfb5ab22996ac055c6402a3c782345db335846389c3ac6ad77ed1

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for aliyundrive_webdav-1.0.0-py3-none-win32.whl
Algorithm Hash digest
SHA256 7165e1c081a711a69ade6e2756ad52f8e818bb8a4b1d3a5b3018c9ef97d5ef83
MD5 c8ca5fc9e845a1cc60ae224468d33a84
BLAKE2b-256 712bb5b881cc070fbcb3019844fe3733ba340b6de520d1136b205686819f05ec

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.0.0-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.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.8

File hashes

Hashes for aliyundrive_webdav-1.0.0-py3-none-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 93e3d704f08f004c1b7c3a9dc7925fb5ca5a858ca5281f31464e03fd8a6633ef
MD5 7bdde034672791e3eeb84305d3e190f9
BLAKE2b-256 cc56f91cba15cef6826a7312e7dcb188bc738754ef1e934eee7888bad0a46a1f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.0.0-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.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.8

File hashes

Hashes for aliyundrive_webdav-1.0.0-py3-none-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 86ae19976042950bfe46d7862846da12a429c5b037e2cbac0dc4824c5987a5a6
MD5 ae01767a9a6834e5bb7bc2e885222f3c
BLAKE2b-256 f098259bbf2ab8cf8ec4baa9f5b60fd7acece1c746d1143ab44ed07f1a13e4c4

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.0.0-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.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.8

File hashes

Hashes for aliyundrive_webdav-1.0.0-py3-none-musllinux_1_1_armv7l.whl
Algorithm Hash digest
SHA256 7559e383e16cfaf55eb7b8753134cdc2c7912cb962cce8aca3d14b3c83904ef2
MD5 05e4f933360126bbbe9e1e5ecf8d303f
BLAKE2b-256 b729365be7be78dc57d4a1193718ed83ac5ded69fe8b2d7f077355eea23089e5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.0.0-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.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.8

File hashes

Hashes for aliyundrive_webdav-1.0.0-py3-none-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 5e63e1ba4244cdd4f4c92f10e7e62d4fcf6e7d64786cc75ce1a5a58f55d649d8
MD5 1aa3d414796442bbeaf1dcf7641a57a5
BLAKE2b-256 d8715833af9fd2e81ee96fb389295004df3c51bd37948df19cf642979e52fcde

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-1.0.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 d36282d917c6714b555288d05186a7a0669275b3306a4be76857434da068eb74
MD5 f4f318c3efe1e8718974cf8e1df69677
BLAKE2b-256 7f958dc997abd951100ad165fe59d293967ec1e6720f45dd964b99dd53c28560

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-1.0.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 72a685c3c2a93d6bc50080a5a657ccbe55e4333cf1768b5ffb910c4e0d8ddf7d
MD5 4c24e75c204e67f3d3fdce60b8901597
BLAKE2b-256 0c96c639f04dd9e5611cacafe953f18375492fecd3bd956faf60cb56497a571c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-1.0.0-py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 ec377e2ff086ff1958c69e92104c659c642f45c11b67c9cabd433990a83d48f0
MD5 5cc2639a0b4ec7ffbbe74346e9d9aa6c
BLAKE2b-256 360e007602137fa02c071506a2c987343461073b8b04efc8c66bd93eaa823aed

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-1.0.0-py3-none-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 edbe62a4adfb6369eb6f0d86fd728c855ef63d43e2617f1411f60949504b4e44
MD5 74626475a7b7ed962206b5c99a8bc5cf
BLAKE2b-256 19f897ff891a7432c01c1e876cc29102b395bc6c4a016f649934accfcdb67fd8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-1.0.0-py3-none-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 41c34b98eea6c3a6964b51aee4b2e3591aaf39d098408380e4cf10ef078ed7da
MD5 f8a88c8227b7070b6bfa5230ea2a0e57
BLAKE2b-256 b2ddc73d7d42714c95c08cf034173d2195c783f94b086b8b45caebe01c46b3f2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-1.0.0-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.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.8

File hashes

Hashes for aliyundrive_webdav-1.0.0-py3-none-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 2927e396ac637ace9ed0b623a7df97ccb74e42ee220fe8d9cce0ce4095d37219
MD5 825dfca5086129d6ba473c0f7d0fd2a1
BLAKE2b-256 f0ae702853ea17a55920088b78e41f2717979c55f0ca92a970b7e7bb440ccd18

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