{"id":14638159,"url":"https://github.com/farfarfun/fundrive","last_synced_at":"2025-04-06T12:10:08.328Z","repository":{"id":43612438,"uuid":"220882474","full_name":"farfarfun/fundrive","owner":"farfarfun","description":"同一套代码接口读取各种网盘数据，支持OSS，阿里云盘，百度云盘，蓝奏网盘，github，gitee等","archived":false,"fork":false,"pushed_at":"2024-12-02T02:40:33.000Z","size":13495,"stargazers_count":46,"open_issues_count":1,"forks_count":4,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-12-02T09:42:06.155Z","etag":null,"topics":["aliyunpan","baidu","baiduyun","gitee","github","lanzou","oss","pcs","python","zenodo"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/farfarfun.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}},"created_at":"2019-11-11T02:10:41.000Z","updated_at":"2024-12-02T02:41:28.000Z","dependencies_parsed_at":"2023-02-01T05:30:35.514Z","dependency_job_id":"8d154d4a-2f4b-4d13-a4bf-4eb8970eb2e2","html_url":"https://github.com/farfarfun/fundrive","commit_stats":null,"previous_names":["farfarfun/fundrive","darkchats/notedrive","notechats/notedrive"],"tags_count":314,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/farfarfun%2Ffundrive","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/farfarfun%2Ffundrive/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/farfarfun%2Ffundrive/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/farfarfun%2Ffundrive/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/farfarfun","download_url":"https://codeload.github.com/farfarfun/fundrive/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247478323,"owners_count":20945266,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["aliyunpan","baidu","baiduyun","gitee","github","lanzou","oss","pcs","python","zenodo"],"created_at":"2024-09-10T02:01:46.805Z","updated_at":"2025-04-06T12:10:08.305Z","avatar_url":"https://github.com/farfarfun.png","language":"Python","readme":"# FunDrive\n\nFunDrive 是一个统一的网盘操作接口框架，旨在提供一个标准化的方式来操作不同的网盘服务。\n\n## V2.0有大改动，升级注意\n\n## 支持的云存储服务\n\n| 序号  | 网盘                                               | 支持内容       | 对应的包         |\n| :---: | :------------------------------------------------- | :------------- | :--------------- |\n|   1   | [蓝奏云](src/fundrive/drives/lanzou/README.md)     | 上传/下载/删除 | fundrive-lanzou  |\n|   2   | [OSS](src/fundrive/drives/oss/README.md)           | 上传/下载/删除 | fundrive[oss]    |\n|   3   | [github](src/fundrive/fungit/README.md)            | 上传/下载/删除 | fundrive         |\n|   4   | [gitee](src/fundrive/fungit/README.md)             | 上传/下载/删除 | fundrive         |\n|   5   | [阿里云盘](src/fundrive/drives/alipan/README.md)   | 上传/下载/删除 | fundrive[alipan] |\n|   6   | [百度网盘](src/fundrive/drives/baidu/README.md)    | 上传/下载/删除 | fundrive[baidu]  |\n|   7   | [谷歌网盘](src/fundrive/drives/google/README.md)   | TODO           | fundrive         |\n|   8   | [Dropbox](src/fundrive/drives/dropbox/README.md)   | TODO           | fundrive         |\n|   9   | [OneDrive](src/fundrive/drives/onedrive/README.md) | TODO           | fundrive         |\n|  10   | [Amazon](src/fundrive/drives/amazon/README.md)     | TODO           | fundrive         |\n\n- 更多服务即将推出...\n\n\n## 功能特点\n\n- 统一的文件操作接口\n- 支持文件和目录的基本操作\n- 灵活的文件信息管理\n- 完整的网盘功能支持\n\n## 核心功能\n\n### 文件操作\n- 文件上传/下载\n- 目录创建/删除\n- 文件移动/复制\n- 文件重命名\n- 文件搜索\n\n### 分享功能\n- 创建分享链接\n- 保存他人分享\n- 设置分享密码\n- 控制分享有效期\n\n### 回收站管理\n- 查看回收站文件\n- 恢复已删除文件\n- 清空回收站\n\n### 存储管理\n- 获取存储配额\n- 获取文件下载链接\n- 获取文件上传链接\n\n\n## 安装\n\n### 使用 pip 安装\n\n```bash\npip install fundrive[alipan]\n```\n\n### 从源码安装\n\n```bash\npython install git+https://github.com/farfarfun/fundrive.git\n```\n\n\n## 使用方法\n\n\n### 基础文件操作示例\n\n```python\n# 初始化网盘实例\ndrive = YourDrive()  # 替换为具体的网盘实现\n\n# 上传文件\ndrive.upload_file(\"/本地路径/文件.txt\", \"目标目录ID\")\n\n# 下载文件\ndrive.download_file(\n    fid=\"文件ID\",\n    filedir=\"下载目录\",\n    filename=\"保存的文件名\"\n)\n\n# 创建目录\nnew_dir_id = drive.mkdir(\"父目录ID\", \"新目录名\")\n\n# 获取文件列表\nfiles = drive.get_file_list(\"目录ID\")\n```\n\n### 文件分享示例\n\n```python\n# 创建分享\nshare_info = drive.share(\n    \"文件ID1\", \"文件ID2\",\n    password=\"分享密码\",\n    expire_days=7,\n    description=\"分享说明\"\n)\n\n# 保存他人分享\ndrive.save_shared(\n    shared_url=\"分享链接\",\n    fid=\"保存到的目录ID\",\n    password=\"分享密码\"\n)\n```\n\n## 扩展开发\n\n要实现新的网盘支持，只需继承 `BaseDrive` 类并实现相应的方法即可。主要需要实现以下核心方法：\n\n- `login()`: 登录认证\n- `upload_file()`: 文件上传\n- `download_file()`: 文件下载\n- `get_file_list()`: 获取文件列表\n- `mkdir()`: 创建目录\n- `delete()`: 删除文件/目录\n\n## 注意事项\n\n- 所有文件和目录操作都基于文件ID（fid）进行\n- 文件信息通过 `DriveFile` 类进行封装\n- 建议在实现具体网盘接口时添加适当的错误处理\n- 注意遵循各网盘服务的使用限制和规范\n\n## 贡献指南\n\n我们欢迎任何形式的贡献！如果您想为 UCSI 做出贡献，请遵循以下步骤：\n\n1. Fork 项目仓库。\n2. 创建一个新的分支 (`git checkout -b feature/your-feature-name`)。\n3. 提交您的更改 (`git commit -am 'Add some feature'`)。\n4. 推送到分支 (`git push origin feature/your-feature-name`)。\n5. 创建一个新的 Pull Request。\n\n\n## 联系我们\n\n如果您有任何问题或建议，请通过 [issues](https://github.com/farfarfun/fundrive/issues) 或 [email](1007530194@qq.com) 联系我们。\n\n---\n\n感谢您使用统一云存储接口！我们希望这个工具能够简化您的云存储集成工作。\n\n\n\n#参考\n百度云盘的 python-api，[官方 API](https://openapi.baidu.com/wiki/index.php?title=docs/pcs/rest/file_data_apis_list)  \n蓝奏云的 python-api [参考](https://github.com/zaxtyson/LanZouCloud-API)\n\n\n\n### [acoooder/aliyunpanshare](https://github.com/acoooder/aliyunpanshare)\n\n狗狗盘搜网站：https://gogopanso.com\n\n全量影视资源：https://link3.cc/alipan\n\n今日新增资源：https://link3.cc/zuixin\n\n","funding_links":[],"categories":["Python"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffarfarfun%2Ffundrive","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffarfarfun%2Ffundrive","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffarfarfun%2Ffundrive/lists"}