你是否有经常下载国外网站文件的需求,你是否被GitHub不定时阻断访问而感恶心(反正我就是)。之前我们所谈到过colab,便派上用场了。通过colab进行中转达到加速下载的效果。
不过前提是你可以访问谷歌才能用此办法(如某歌访问助手)
经测试,colab的下载速度应该是没有问题的,而现在就是说再用colab上传到哪的问题。(不会吧不会吧,还有人想着上传到百度网盘)
emm,以下是几种方案
1.又拍云
首先我们先去又拍云创建云存储服务,操作员名,服务名,密码要记下来以备后用
注意又拍云即使你没有备案域名它也会给你提供一个测试域名的,也能访问进行下载,只不过可能速度不行。当然你也可以用ftp进行下载。有备案域名的可以直接无视
a又拍云提供了UPX工具.UPX 是专为开发者设计的,基于命令行的云存储管理工具。它可以实现文件上下传、增量文件同步、目录创建删除、文件删除(包括异步文件批量删除)等。
!wget -O /usr/local/bin/upx http://collection.b0.upaiyun.com/softwares/upx/upx-linux-amd64-v0.2.6
!chmod +x /usr/local/bin/upx
!upx login
下载安装,赋权文件夹,并登录账号(ServiceName即为服务名,Operator为操作员名,password即密码)
!upx put 2.mp4 /a/
如这样,就把2.mp4上传到a目录下了
经实测,colab上传速度能达到1m/s左右,总比没有好吧。
colab笔记本链接:https://colab.research.google.com/drive/1jrwtEQ0xwV3fV_NQAiMkHBQidRWfK2pz?usp=sharing
附更多命令
命令 | 说明 |
login | 登录又拍云存储 |
logout | 退出帐号 |
sessions | 查看所有的会话 |
switch | 切换会话 |
info | 显示服务名、用户名等信息 |
cd | 改变工作目录(进入一个目录) |
pwd | 显示当前所在目录 |
mkdir | 创建目录 |
ls | 显示当前目录下文件和目录信息 |
tree | 显示目录结构 |
get | 下载一个文件或目录 |
put | 上传一个文件或目录 |
rm | 删除目录或文件 |
sync | 目录增量同步,类似 rsync |
auth | 生成包含空间名操作员密码信息的 auth 字符串 |
post | 提交异步处理任务 |
purge | 提交 CDN 缓存刷新任务 |
b.又拍云官方同时也提供了python sdk,使用起来比较方便的。
(我试了没上传好)
接下来我们去colab,安装第三方依赖库requests,upyun sdk
然后初始化upyun
像这样
第一个引号内填服务名,第二个填操作员名,第三个填密码。
up.put('/content/xxx.xxx', 's')
解析来就是下载,途径很多如http、ftp、upx等,不再赘述
2.s3协议
很多对象存储都提供了s3访问,如国内的阿里云,腾讯云,国外的ibm cloud,aws cloud等。
因此也可以通过s3cmd上传文件。
下面以ibmcloud为例具体说明如何操作
ibm cloud的lite(免费 计划中包含了25g存储空间及5g出站流量
接下来去创建存储区
地域建议选择东京(jp-tok)或香港(hkg02)速度较快
创建好后去访问策略中启用公共访问权
然后去创建服务凭证,角色选择管理员,还要记得点开高级选项在包含包含 HMAC 凭证打勾。(这个坑搞了我很久)
然后你会得到这样的东西,我们需要的是access_key_id&secret_access_key
接下来可以去colab了
!sudo apt-get install s3cmd
安装s3cmd,然后开始配置
将access_key_id&secret_access_key分别填入Access Key和Secret Key
Default Region填入你创建时选择的地域,S3 Endpoint可以在ibm cloud对象存储控制面板中的端点找到
注意选择恰当的灾备类型,如东京的有跨区域和区域的节点,2个是不同的
DNS-style bucket+hostname:port template for accessing a bucket
这个要填你的bucket名.+上面的节点域名
Encryption password 留空即可
一路回车,直到出现
输入y,就保存配置了
接着,输入!s3cmd ls
就可以看到你的bucket了
最后上传文件到你的bucket
!s3cmd put 1.png s3://xxx
colab笔记本地址:https://colab.research.google.com/drive/1tezaOsn5mkLuwx6pG_DtaBkAW5dxXKme?usp=sharing
至于阿里云等其他的大家可以自行探索
3.webdav(目前因未知原因不行
其实吧能提供webdav的网盘不多,yandex disk(需科学上网),坚果云,还有我们的西普拉斯云....
不过遇到了问题
装好了davfs2,新建了目录,准备挂载时显示
而且按照这个教程更改了etc/davfs/davfs2.confz中忽略webdav头就好了
https://zohead.com/archives/davfs2-nutstore/
删去#并把0改为1
本文在持续更新中,如有错误之处,敬请纠正