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

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

Uploaded Source

Built Distributions

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

Uploaded Python 3 Windows x86-64

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

Uploaded Python 3 Windows x86

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

Uploaded Python 3 musllinux: musl 1.1+ i686

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

Uploaded Python 3 musllinux: musl 1.1+ ARMv7l

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

Uploaded Python 3 musllinux: musl 1.1+ ARM64

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

File metadata

  • Download URL: aliyundrive_webdav-0.5.0.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.0.tar.gz
Algorithm Hash digest
SHA256 1674855284a90638243e06c07e2dea9de685d8407b2f4bb0ba5130edf68c8f12
MD5 1c42309bd088fd5dd08198a4708bd1ab
BLAKE2b-256 f33486c1b2db8662fe32e0838f5d6b2592dae55689e7f84756fb28e0c0c30630

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.5.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.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.0-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 c02149a798b0637c35baf609da114c1291da8bbf0f35bfaa17a6eb93192ee7a6
MD5 32a9b73e76ac750ea466a1aaa4a73fd6
BLAKE2b-256 f3fccfd328ede10d389ae4fa81c1dfdbb9e22f33ee9ab6999b3cb426c80612f5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.5.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.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.0-py3-none-win32.whl
Algorithm Hash digest
SHA256 7c4863fae2120daf437107332ac844915204eee232e75c3b36e0b558c3772fd3
MD5 5cd3e460a235e8d64bd4bb1b6a53d9fe
BLAKE2b-256 7e4efa53bc5f478ff4b1aba23ba267db64414193cb6d497fc8093b00e660c6c2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.5.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.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.0-py3-none-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 446cc04c886b900a6730aef597d313b092a1cb192eac4361a4d6fbef7f724363
MD5 c52e833e98c98d64e86da2353a066982
BLAKE2b-256 0e2816631da00518386096d9808070e8ea28c6166b7486c5141ae73bc26f07dc

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.5.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.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.0-py3-none-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 dcba20ac6647edd71311892d8304e7d40328ab4708e8f627eb6b7209b5bbbac7
MD5 4b35ccdff6b17f1cc7b1a05cd7d8df96
BLAKE2b-256 a39bb7d87cc2d9f1b2b1be3dbdf966d7168e0ef2d0f1917a5bc9785936dfb8a3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.5.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.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.0-py3-none-musllinux_1_1_armv7l.whl
Algorithm Hash digest
SHA256 e873e2f89e0133a02aa0d41b4455e9755e10d115ebc79e29f258168bd9b4ee61
MD5 ddb5a9becb6f20fe034f4c9885ccc5e6
BLAKE2b-256 8fa769ab2997ef4b08a23e8c122fdf3f719a77f3a8281d3674f977d130857184

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.5.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.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.0-py3-none-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 0f38295be39b0b364c9f3a34b31004aa064b27af248f4bf33b8afd2374db1e6a
MD5 ed640563d4533978000fa558d50650c1
BLAKE2b-256 135a407b8fe909e733ffcc1e26e50d10ba626b5545f2460f48177bf57cecb108

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-0.5.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 f5254dadc829a7aacc6cb268ed23bc67d29eeba5d3d66e7f743565fd56d678b6
MD5 89181fa7413e374627c7c79b0c066ce3
BLAKE2b-256 cc46f77450f7c102a3001fd76669b521ee427343941f2937d887705299750ed4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-0.5.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2042de8b87a7f964cda0f77caf85a544f1316d0f70dc839bdc8a559996037809
MD5 3056bc1d274ceebe2325efa8c6a59a88
BLAKE2b-256 971330d5ba06511225d65d9d3b9380194747e1a2773e0bbc82891f31e4317dd9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-0.5.0-py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 58bee2bb7f4383803c08f82e6d5a2c67d99dd282eb31b5453f32764128949419
MD5 fadfcb47f8f481331a4483862cd360ab
BLAKE2b-256 6f9b940ecbb0b0e4dbc39ce0711a9581c4e10bbb1dbdd88086499b6205aea5e6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aliyundrive_webdav-0.5.0-py3-none-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 be1ea926c0b5868f150667c142683714312c636836386f8000d2c9ef87a5820d
MD5 0fd4eff81dc799c98892e7151dd2e94d
BLAKE2b-256 6393557ac55ae6380cdc975f10963f22c6f2f87ab8da72e3a34eb77b6a0f9b29

See more details on using hashes here.

File details

Details for the file aliyundrive_webdav-0.5.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-0.5.0-py3-none-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 d6b676ff0146797ffdb4dbf5e57e7787eb1bcbce5861be2c73debf3c5a9ce2e4
MD5 2b63a93020e650211732f36eae240663
BLAKE2b-256 43035126ba0e38911f8d743af148e0420f2e3154905ef20d97b5741cb417f2ca

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aliyundrive_webdav-0.5.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.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.0-py3-none-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 43edfa1147686d115f22b8d601f8bd6aa361e8a46f4b36a93112f03f5395b2db
MD5 c18d99a745cd47ff5bdd50ea86a978e4
BLAKE2b-256 3acb961d96fab28323f86e50fecd57817ab6fc0c859461c9db43e36ffcce6340

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