重写了图床神器,支持七牛云和腾讯云
· 阅读需 3 分钟
前言
用Python重写了图床神器,支持七牛云和腾讯云。用Python写起来感觉顺滑多了~贴一下效果:
项目地址:lpic: 终端图床神器
为什么要想着重写图床神器呢?
因为,突然发现七牛云的外链不是HTTPS的,然后谷歌浏览器地址栏就没有小绿锁了,标记网站为不安全。而腾讯云的外链是HTTPS的,而且,腾讯云免费额度更多(虽然七牛云10G也足够)。想了想,还是搬到腾讯 云吧。貌似谷歌会在以后版本的谷歌浏览器将HTTP用红色警告标记为不安全,所以还是早早上HTTPS比较好。
用Python重写其实难度不大,就调用调用官方SDK就行了。不过,在此过程中还是有些收获的。
总结
压缩图片
既然是用Python重写,通过调用命令行的方式用convert
命令压缩图片就显得不够优雅了。可以用Pillow
来处理:
from PIL import Image
with Image.open(file) as im:
im.save(new_file, format='JPEG', optimize=True)
optimize=True 表示自动优化,使用JPEG压缩效果很不错。
读取YAML
yaml格式作为配置文件貌似挺火的,好像有不少软件的配置文件用的yaml。不过,我觉得yaml 有点坑的地方在于,:
后面要有空格,否则会解析失败。
Python可以用现成的PyYAML
来读取YAML:
import yaml
with open(yml_file) as fp:
conf = yaml.load(fp)
会解析为dict。
这里说一个小插曲,我习惯使用dict的.get(key, default)
方法来设置默认值,不过在读取yaml后我用这种方式设置默认值发现没效果。后来才发现是我思维定势了,如果key存在,即使对应的值是None,也不能用这种方式设置默认值,因为key存在,而这个方法是给不存在的key设置默认值的。