无限的驱动器存储 UDS

AGPL 3.0
Python
跨平台
2019-05-15
xplanet

UDS 可以将文件存储到 Google Docs 而不用考虑配额的问题。

特性

  • 上传文件到 Google Drive 而且并不占用存储空间
  • 下载存储的文件到本地

逻辑

  • Google Docs 不会占用你的 Google Drive 的存储空间
  • 使用 Base64 编码将二进制文件拆开存放到 Google Docs
  • 编码后的文件一般比原始文件大,Base64 和二进制文件的体积比例大概为 4:3.
  • 单一 Google 文档可以存储大约 100 万个字符,差不多是 710kb 的 Base64 编码数据
  • 多线程上传,但没有显著的性能提升

Authentication

  1. Head to Google's API page and enable the Drive API
  2. Download the configuration file as 'client_secret.json' to the UDS directory
  3. run  python uds.py  for initial set up

UDS Core

Upload

> python uds.py push Ubuntu.Desktop.16.04.iso
Ubuntu.Desktop.16.04.iso will required 543 Docs to store.
Created parent folder with ID 1fc6JGpX6vUWiwflL1jBxM1YpuMHFAms8
Successfully Uploaded Ubuntu.Desktop.16.04.iso: [██████████████████████████████] 100%
[Layout]
python uds.py push argument
argument: Path_to_file+file_name

List

> python uds.py list
Name                      Size   Encoded    ID
------------------------  -----  ---------  ---------------------------------  
Ubuntu.Desktop.16.04.iso  810 MB  1.1 GB    1fc6JGpX6vUWiwflL1jBxM1YpuMHFAms8
Ubuntu.Desktop.18.10.iso  1.1 GB  1.3 GB    1RzzVfN9goHMTkM1Hf1FUWUVS_2R3GK7D
Also supports searching with a query!
> python uds.py list "18"
Name                      Size   Encoded    ID
------------------------  -----  ---------  ---------------------------------  
Ubuntu.Desktop.18.10.iso  1.1 GB  1.3 GB    1RzzVfN9goHMTkM1Hf1FUWUVS_2R3GK7D
[Layout]
python uds.py list
arguments: query

Download

> python uds.py pull 1fc6JGpX6vUWiwflL1jBxM1YpuMHFAms8
Downloaded Ubuntu.Desktop.16.04.iso: [██████████████████████████████] 100%
[Layout]
python uds.py pull argument
argument: id_of_file

Delete

> python uds.py delete 1fc6JGpX6vUWiwflL1jBxM1YpuMHFAms8
Deleted 1fc6JGpX6vUWiwflL1jBxM1YpuMHFAms8
[Layout]
python uds.py delete argument
argument: id_of_file

Alpha Extensions

Grab

> python uds.py grab test.7z
Update Successful!
Downloaded test.7z: [██████████████████████████████] 100%
[Layout]
python uds.py grab argument
argument: name_of_file

Erase

>python uds.py erase test2.7z
Update Successful!
Deleted test2.7z
[Layout]
python uds.py erase argument
argument: name_of_file

Update

> python uds.py update
Name       Encoded   Size 
---------  --------  -----
file_name  1.1 GB    810 MB 
"User.txt"
Name       Encoded   Size 
---------  --------  -----
file_name  1.1 GB    810 MB 
"data.txt"
{
"file0": "1fc6JGpX6vUWiwflL1jBxM1YpuMHFAms8"
"file2": "1fc6JGpX6vUWiwflL1jBxM1YpuMHFAms9"
}
[Layout]
python uds.py update
arguments: None

Bulk Extensions

Bunch

> python uds.py bunch test
test.7z.1 will require 1337 Docs to store.
Created parent folder with ID 1fc6JGpX6vUWiwflL1jBxM1YpuMHFAm12
Successfully Uploaded test.7z.1: [██████████████████████████████] 100%
test.7z.2 will require 1337 Docs to store.
Created parent folder with ID 1fc6JGpX6vUWiwflL1jBxM1YpuQQFAm12
Successfully Uploaded test.7z.2: [██████████████████████████████] 100%
test.7z.3 will require 600 Docs to store.
Created parent folder with ID 1fc6JGpX6vTOiwflL1jBxM1YpuQQFAm12
Successfully Uploaded test.7z.3: [██████████████████████████████] 100%
[Layout]
python uds.py bunch argument[1] argument[2]
argument[1]: name_in_files, or wildcard "?" without quotes
argument[2]: directory, defualt is current directory of UDS

Batch

> python uds.py batch file_name
Update Successful!
Downloaded file_name.7z.1: [██████████████████████████████] 100%
Downloaded file_name.7z.2: [██████████████████████████████] 100%
Downloaded file_name.7z.3: [██████████████████████████████] 100%
[Layout]
python uds.py batch argument
arguments: name_in_files, or wildcard "?" without quotes

Wipe

>python uds.py wipe file
Update Successful!
Deleted file.7z.1
Deleted file.7z.2
Deleted file.7z.3
[Layout]
python uds.py wipe argument
arguments: name_in_files, or wildcard "?" without quotes

兼容 Python 3.

的码云指数为
超过 的项目
加载中

评论(2)

跑来跑去

引用来自“红薯”的评论

这应该是 Google Doc 的大漏洞!!!
传说中的狗洞,要不要去钻一下
红薯
红薯
这应该是 Google Doc 的大漏洞!!!

暂无资讯

暂无问答

“画”中有话,腾讯公益记录下的无声匠人

【创成汇】 “我是一名聋人画师,我知道我和别人是不一样的。我,从未听见过这个世界,但是老师告诉我,作画也是一种声音,从那时起,我便选择用画笔与这个世界对话。”在腾讯公益的一则短片...

2018/09/28 22:10
1
0
Debian8下的radosgw安装与排错

ceph安装版本为0.94.3,安装官方文档出现一些问题,解决过程如下

2015/09/17 14:59
125
0
数据库集群技术

用来保存计算最终结果的 数据库是整个信息系统的重要组成部分, 技术也相对成熟。然而,对于所有数据库而言,除了记录正确的 处理结果之外,也面临着一些挑战:如何提高处理速度,数据可用性...

2013/05/17 16:34
115
0
JavaMail的使用

Javamail是用来发送邮件的一个常用框架,我以前用过这个框架写过一个发送邮件的demo,以下内容是我以前整理的。 1javamail的使用 我是使用mavne的,所以引用了如下的依赖,如果不引入第二个依...

2013/07/22 21:24
1K
0
集群概念介绍

集群概念介绍 集群术语须知 服务硬件:指提供计算服务的硬件,比如 PC 机、PC 服务器。 服务实体:服务实体通常指服务软体和服务硬体。 节点(node):运行 Heartbeat 进程的一个独立主机称为...

2018/07/24 13:06
9
0
谷歌地图开发

开发人员指南 地图基础知识 1 简介 2 Google 地图的“Hello, World” 2 加载 Google 地图 API 2 地图 DOM 元素 2 GMap2 - 基本对象 2 初始化地图 2 加载地图 3 经度和纬度 4 地图属性 5 地图...

2016/07/28 14:47
114
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部