123pan/README.md
2025-10-13 16:23:18 +08:00

5.4 KiB
Raw Blame History

123Pan 命令行工具

123 网盘命令行工具支持列出文件、下载、上传、分享、删除、创建目录及回收站管理。Android 客户端或 Web 协议,便于在本地批量管理与下载文件。

123download.js 是网页端辅助脚本最初版本,仍然可以使用,仅保留最基本的解锁下载功能,不再更新。 可以参考其他项目:123云盘解锁 (@QingJ) 123 云盘会员青春版 (@hmjz100)

特性

  • 登录 / 登出
  • 列出当前目录文件ls
  • 切换目录cd与刷新refresh / re
  • 下载单文件或递归下载文件夹download / d
  • 上传文件upload
  • 创建文件夹mkdir
  • 删除文件rm
  • 创建分享链接share
  • 获取文件直链link
  • 回收站管理recycle / restore
  • 协议切换protocol android|web
  • 支持保存配置到 JSON 文件authorization、device/os、protocol 等)

脚本环境要求

  • Python 3.7+
  • 依赖库requests 安装:
    pip install requests
    

安装与运行

脚本运行

  1. 克隆或下载本仓库到本地。
  2. 进入项目目录。
  3. 运行脚本:
    python 123pan.py
    
    启动后会提示输入用户名 / 密码,或自动读取配置文件(默认 123pan_config.json123pan.txt,脚本内部根据传入参数使用该文件)。

下载release版

根据系统下载对应的 release 版本,解压后运行 123pan.exeWindows123panLinux

配置文件JSON

脚本会读取并保存一个配置文件(示例 123pan_config.json),保存登录状态与偏好,格式示例:

{
  "userName": "your_username",
  "passWord": "your_password",
  "authorization": "Bearer xxxxx",
  "deviceType": "M2007J20CI",
  "osVersion": "Android_10",
  "protocol": "android"
}

注意:保存密码或 token 到本地会有安全风险,请在可信环境下使用并妥善保护该文件。

常用命令(交互式)

在脚本交互提示符中输入命令,部分带参数:

  • 直接输入编号

    • 若编号对应文件夹 → 进入该文件夹
    • 若编号对应文件 → 直接下载该文件
  • ls

    • 显示当前目录的文件与文件夹列表。
  • cd [编号|..|/]

    • 切换目录:
      • cd 3 —— 进入当前列表第3项如果是文件夹
      • cd .. —— 返回上级。
      • cd / —— 返回根目录。
  • mkdir [名称]

    • 在当前目录创建文件夹。例如mkdir test
  • upload [路径]

    • 上传文件到当前目录。例如upload C:\Users\you\Desktop\file.txt
    • 仅支持文件,暂不支持目录批量上传。
  • rm [编号]

    • 删除当前列表中的文件/文件夹会移动到回收站。例如rm 2
  • share [编号 ...]

    • 为一个或多个文件创建分享链接例如share 2 4
    • 程序会提示输入提取码(可留空)。
  • link [编号]

    • 获取文件直链。例如link 3
  • download / d [编号]

    • 下载指定编号的文件或文件夹(如果是文件夹,会递归下载)。
    • 例如download 5
  • recycle

    • 显示回收站内容,并可恢复或清空。
    • 可输入编号恢复,或输入 clear 清空回收站。
  • refresh / re

    • 刷新当前目录列表。
  • reload

    • 重新加载配置文件并刷新目录。
  • login / logout

    • login手动登录使用当前配置或提示输入
    • logout登出并清除授权信息保存配置时会写入空 token
  • more

    • 如果当前目录分页未加载完,输入 more 继续加载更多文件。
  • protocol [android|web]

    • 切换协议。例protocol web
    • 切换后会重新初始化请求头,并可选择保存到配置文件。
  • exit

    • 退出程序。

交互示例:

/> cd demo
无效命令,使用 '..' 返回上级,'/' 返回根目录,或输入文件夹编号
/> cd 1   
当前目录为空
/demo1> ls
当前目录为空
/demo1> mkdir test
目录 'test' 创建成功

/demo1> 1
当前目录为空
/demo1/test> upload 123pan.py
上传进度: 100.0%
上传完成,正在验证...
文件上传成功
------------------------------------------------------------
编号    类型      大小          名称
------------------------------------------------------------
1     文件      38.66 KB    123pan.py
============================================================

/demo1/test> 1 
开始下载: 123pan.py
进度: 100.0% | 38.66 KB/38.66 KB | 10.29 MB/s      
下载完成: 123pan.py
/demo1/test>

下载说明

  • 下载到脚本所在目录的 download 文件夹,下载过程中使用临时后缀 .123pan,下载完成后会重命名为原文件名。
  • 如果文件已存在,会提示覆盖 / 跳过 / 全部覆盖 / 全部跳过等选项。

注意事项

  • 项目仅用于方便命令行场景下使用123云盘请遵守123云盘使用规范。
  • 本工具用于学习与自用场景,请勿用于违法用途。对任何滥用造成的后果,本人概不负责。
  • 建议不要在公用或不受信任的机器上保存明文密码或授权信息。

免责声明

本工具用于学习场景,请勿用于违法用途。对任何滥用造成的后果,作者概不负责。 ⚠️ 本项目免费开源,严禁通过本项目以任何形式牟利,任何获利行为与作者无关。