{"id":48446891,"url":"https://github.com/wscats/baidu-netdisk-skills","last_synced_at":"2026-04-06T18:04:25.473Z","repository":{"id":348141070,"uuid":"1182468064","full_name":"Wscats/baidu-netdisk-skills","owner":"Wscats","description":"百度网盘管理助手 Skills","archived":false,"fork":false,"pushed_at":"2026-03-30T23:49:30.000Z","size":63,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-31T01:40:52.173Z","etag":null,"topics":["baiduyun","netdisk","skills"],"latest_commit_sha":null,"homepage":"https://clawhub.ai/Wscats/baidu-netdisk-skills","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Wscats.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-03-15T15:07:18.000Z","updated_at":"2026-03-16T01:45:06.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/Wscats/baidu-netdisk-skills","commit_stats":null,"previous_names":["wscats/baidu-netdisk-skills"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/Wscats/baidu-netdisk-skills","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Wscats%2Fbaidu-netdisk-skills","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Wscats%2Fbaidu-netdisk-skills/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Wscats%2Fbaidu-netdisk-skills/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Wscats%2Fbaidu-netdisk-skills/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Wscats","download_url":"https://codeload.github.com/Wscats/baidu-netdisk-skills/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Wscats%2Fbaidu-netdisk-skills/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31483393,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-06T17:22:55.647Z","status":"ssl_error","status_checked_at":"2026-04-06T17:22:54.741Z","response_time":112,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["baiduyun","netdisk","skills"],"created_at":"2026-04-06T18:04:01.196Z","updated_at":"2026-04-06T18:04:25.449Z","avatar_url":"https://github.com/Wscats.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 百度网盘管理助手 (Baidu Netdisk Manager)\n\n## 🚀 快速使用\n\n```bash\n# 1. 克隆项目\ngit clone https://github.com/your-username/baidu-netdisk-skills.git\ncd baidu-netdisk-skills\n\n# 2. 安装依赖\npip install -r requirements.txt\n\n# 3. 登录（二选一）\n\n# 方式一：扫码登录（推荐）\npython netdisk.py login --qrcode\n\n# 方式二：Cookie 登录（从浏览器复制 BDUSS）\npython netdisk.py login --cookie \"BDUSS=your_bduss_value\"\n\n# 4. 开始使用\npython netdisk.py list /                    # 列出根目录文件\npython netdisk.py search \"期末考试\"          # 搜索文件\npython netdisk.py upload ./local.pdf /docs/ # 上传文件\npython netdisk.py download /docs/file.pdf   # 下载文件\npython netdisk.py info                      # 查看空间信息\n```\n\n---\n\n## 📖 目录\n\n- [项目简介](#项目简介)\n- [功能特性](#功能特性)\n- [安装方式](#安装方式)\n- [认证登录](#认证登录)\n- [命令详解](#命令详解)\n- [Python API 调用](#python-api-调用)\n- [配置说明](#配置说明)\n- [常见问题](#常见问题)\n- [许可证](#许可证)\n\n---\n\n## 项目简介\n\n百度网盘管理助手是一个基于 Python 的命令行工具，提供对百度网盘的完整管理功能。支持 **扫码登录** 和 **Cookie 导入** 两种认证方式，涵盖文件的增删改查、分享、空间分析等核心操作。\n\n## 功能特性\n\n| 模块     | 功能                                       |\n| -------- | ------------------------------------------ |\n| 🔐 认证  | 扫码登录、Cookie 登录、会话持久化、自动续期 |\n| 📂 文件  | 列表、搜索、上传、下载、删除、移动、重命名、复制 |\n| 🔗 分享  | 创建分享（带密码/有效期）、查看分享、取消分享 |\n| 💾 空间  | 容量查看、文件类型统计分析                 |\n\n## 安装方式\n\n### 环境要求\n\n- Python 3.9+\n- pip 包管理器\n\n### 安装步骤\n\n```bash\n# 克隆仓库\ngit clone https://github.com/your-username/baidu-netdisk-skills.git\ncd baidu-netdisk-skills\n\n# 创建虚拟环境（推荐）\npython -m venv venv\nsource venv/bin/activate  # macOS/Linux\n# venv\\Scripts\\activate   # Windows\n\n# 安装依赖\npip install -r requirements.txt\n```\n\n## 认证登录\n\n### 方式一：扫码登录（推荐）\n\n```bash\npython netdisk.py login --qrcode\n```\n\n执行后终端会显示二维码，使用百度网盘 App 扫码即可完成登录。登录凭证会自动保存到 `~/.netdisk/session.json`。\n\n### 方式二：Cookie 登录\n\n1. 在浏览器中登录 [百度网盘](https://pan.baidu.com)\n2. 按 `F12` 打开开发者工具 → Application → Cookies\n3. 复制 `BDUSS` 的值（可选：同时复制 `STOKEN`）\n\n```bash\n# 仅使用 BDUSS\npython netdisk.py login --cookie \"BDUSS=your_bduss_value\"\n\n# 使用 BDUSS + STOKEN（功能更完整）\npython netdisk.py login --cookie \"BDUSS=xxx;STOKEN=yyy\"\n```\n\n### 验证登录状态\n\n```bash\npython netdisk.py whoami\n```\n\n## 命令详解\n\n### 文件列表\n\n```bash\n# 列出根目录\npython netdisk.py list /\n\n# 列出指定目录\npython netdisk.py list /我的文档\n\n# 按时间排序\npython netdisk.py list / --sort time --order desc\n```\n\n### 文件搜索\n\n```bash\n# 按关键词搜索\npython netdisk.py search \"论文\"\n\n# 指定搜索目录\npython netdisk.py search \"照片\" --dir /我的相册\n```\n\n### 文件上传\n\n```bash\n# 上传单个文件\npython netdisk.py upload ./report.pdf /工作文档/\n\n# 上传整个目录\npython netdisk.py upload ./photos/ /我的相册/ --recursive\n```\n\n### 文件下载\n\n```bash\n# 下载文件到当前目录\npython netdisk.py download /工作文档/report.pdf\n\n# 指定下载位置\npython netdisk.py download /工作文档/report.pdf --output ~/Downloads/\n```\n\n### 文件删除\n\n```bash\n# 删除单个文件\npython netdisk.py delete /临时文件/test.txt\n\n# 批量删除（支持通配符）\npython netdisk.py delete \"/临时文件/*.tmp\"\n```\n\n### 文件移动/重命名\n\n```bash\n# 移动文件\npython netdisk.py move /旧目录/file.txt /新目录/\n\n# 重命名\npython netdisk.py rename /文档/old_name.pdf new_name.pdf\n```\n\n### 文件复制\n\n```bash\npython netdisk.py copy /文档/file.txt /备份/\n```\n\n### 创建分享\n\n```bash\n# 创建分享（默认永久有效、随机密码）\npython netdisk.py share /文档/file.pdf\n\n# 设置有效期（天数）和自定义密码\npython netdisk.py share /文档/file.pdf --days 7 --password abc1\n```\n\n### 查看/取消分享\n\n```bash\n# 列出所有分享\npython netdisk.py shares\n\n# 取消分享\npython netdisk.py unshare \u003cshare_id\u003e\n```\n\n### 空间信息\n\n```bash\n# 查看空间使用情况\npython netdisk.py info\n\n# 按类型分析空间占用\npython netdisk.py info --analyze\n```\n\n## Python API 调用\n\n除命令行外，也可以在 Python 代码中直接调用：\n\n```python\nfrom netdisk_sdk import BaiduNetdisk\n\n# 使用 Cookie 初始化\nnd = BaiduNetdisk(bduss=\"your_bduss\", stoken=\"your_stoken\")\n\n# 列出文件\nfiles = nd.list_files(\"/我的文档\")\nfor f in files:\n    print(f\"{f['server_filename']}  {f['size']} bytes\")\n\n# 搜索文件\nresults = nd.search(\"合同\")\n\n# 上传文件\nnd.upload(\"./local_file.pdf\", \"/网盘目录/\")\n\n# 下载文件\nnd.download(\"/网盘目录/file.pdf\", \"./local_path/\")\n\n# 获取空间信息\nquota = nd.get_quota()\nprint(f\"已用: {quota['used_gb']:.1f} GB / 总计: {quota['total_gb']:.1f} GB\")\n\n# 创建分享\nshare = nd.create_share(\"/文档/file.pdf\", password=\"ab12\", days=7)\nprint(f\"分享链接: {share['link']}  密码: {share['password']}\")\n```\n\n## 配置说明\n\n配置文件位于 `~/.netdisk/config.json`：\n\n```json\n{\n  \"download_dir\": \"~/Downloads/netdisk\",\n  \"chunk_size\": 4194304,\n  \"max_retries\": 3,\n  \"timeout\": 30,\n  \"auto_rename\": true\n}\n```\n\n| 配置项       | 说明                   | 默认值               |\n| ------------ | ---------------------- | -------------------- |\n| download_dir | 默认下载目录           | `~/Downloads/netdisk`|\n| chunk_size   | 分片上传大小 (bytes)   | `4194304` (4MB)      |\n| max_retries  | 请求失败重试次数       | `3`                  |\n| timeout      | 请求超时时间 (秒)      | `30`                 |\n| auto_rename  | 同名文件自动重命名     | `true`               |\n\n## 常见问题\n\n**Q: 扫码登录后提示\"会话已过期\"？**\nA: 百度网盘登录凭证有效期约30天，过期后重新执行 `python netdisk.py login --qrcode` 登录。\n\n**Q: Cookie 登录应该复制哪些值？**\nA: 必须复制 `BDUSS`，建议同时复制 `STOKEN` 以获得完整功能。\n\n**Q: 上传大文件失败？**\nA: 工具使用分片上传，默认分片 4MB。如果网络不稳定，可减小 `chunk_size` 配置。\n\n**Q: 下载速度慢？**\nA: 非 SVIP 用户下载速度受百度限制，建议开通 SVIP 获得极速下载。\n\n## 许可证\n\nMIT License - 详见 [LICENSE](./LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwscats%2Fbaidu-netdisk-skills","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwscats%2Fbaidu-netdisk-skills","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwscats%2Fbaidu-netdisk-skills/lists"}