对象存储云cos + tinify? + python实现压缩图片之后上传并返回外链。
对象存储云、tinify
这里仅对比了Qcloud和七牛云。
- Qcloud提供50G免费空间、10G外链。
- qiniu认证用户有10G空间,5G外链。
其他push,get请求在正常使用过程中貌似达不到上限,这里就不对比。
tinify是个免费的png压缩网站,它的api提供每月500次免费压缩次数,所以超过这个数量的大佬请忽视它。使用之前需要去官网获取自己的API KEY。
七牛云的id和key也需要从官网获取。
需要实现的功能
- 先实现tinify的压缩图片。(目前已经实现,只是需要联网,可能有更好的本地化方法。)
- 压缩的图片之后直接上传到腾讯云/七牛云。并给我返回一个外链供我使用。
具体手段
本菜鸟手握Python3.6
对着腾讯cosSDK忙活了一天,没有收获。倒是在晚上放弃之前装上python2.7
之后一次成功了…但是我的anaconda2
一直print报错,网上一搜都是这个问题。腾讯仅有一个qcloudapi-sdk-python支持Python3.6,且我不太能看懂:仅提供了api接口地址,和一个名为base.py
的有些内容的函数。所以我选择七牛云,等腾讯大佬把Python3的SDK再完善一下再考虑。 关于腾讯云还发现了两个针对cos开发的SDK,仅支持pyhton 2.6 2.7。
对于我这种刚入门的小白来说,七牛云的Python SDK 真是太友好了!关键是它支持Python3.6!而七牛云SDK里还有个BucketManager
,功能强大!业界良心。
部分细节
- 压缩之后替代原文件,上传之后删除文件并返回一串图片外链。
- 改用七牛云之后,
不返回图片外链,直接将本地文件名命名为外链地址。发现不行:图片名称不能出现斜线。 - 还是生成一个txt文件吧。
- 能不能访问到剪切板呢?(需要学习)
代码
Python库要求:pip install qiniu
、pip install tinify
代码放在:https://github.com/xueglc/MyPython
其他任务
学习Seaborn
,配合pandas,numpy。
学习带有class类Python程序的写法,理解其优点。