PyPicGo 是一款图床工具,是PicGo是Python版实现,并支持各种插件自定义插件,目前PyPicGo
自带了gitee
、github
、SM.MS
和七牛云
图传,以及rename
、notify
和typora
等插件,并支持从pypi
中下载其他插件和Uploader
【gitee】https://gitee.com/Ranger313/pypicgo
【github】https://github.com/AnsGoo/PyPicGo
pip install pypicgo
配置文件位于/$HOME/.PyPicGo/config.yml
目录下,采用YAML
的方式进行配置。必须配置上传器uploader
,插件plugins
的数量可选
default: # 默认配置
uploader: gitee # 默认图床
plugins: # 全局插件
- module: pypicgo.plugins.rename.ReNamePlugin # 图床插件加载地址
config:
format: liunx{hash}chenghaiwen{date}-{filename}
- module: pypicgo.plugins.typora.TyporaPlugin
- module: pypicgo.plugins.compress.CompressPlugin
- module: pypicgo.plugins.notify.NotifyPlugin
uploaders: # 可用图床
smms: # sm.ms图床配置
module: pypicgo.uploaders.smms.uploader.SmmsUploader
config:
secret_token: xxx
gitee: # gitee 图床配置
module: pypicgo.uploaders.gitee.uploader.GiteeUploader
config:
domain: https://gitee.com
owner: xxx
repo: xxx
img_path: xxx
access_token: xxx
plugins:
github: # github图床配置
module: pypicgo.uploaders.github.uploader.GithubUploader
config:
domain: https://api.github.com
owner: xxx
repo: xxx
img_path: xxx
oauth_token: xxx
plugins: # github 图床私有插件
- module: pypicgo.plugins.jsdelivr.JsDelivrPlugin
qiniu: #七牛云图床配置
moduele: pypicgo.uploaders.qiniu.uploader.QiNiuUploader
config:
domain: http://demo.pypicho.com/
bucket_name: pypicgo
apis:
- http://up-z1.qiniup.com
access_key: xxx
secret_key: xxxx
更多的配置说明参考文档
帮助信息
pypicgo -h
上传文件
pypicgo -f picture1 picture2 …
指定上传图床
pypicgo -n github -f picture1 picture2 …
如果系统找不到pypicgo
,请检查python
的Scripts
文件夹是否被加入Path
环境变量
图床名
模块地址
gitee
pypicgo.uploaders.gitee.uploader.GiteeUploader
七牛云
pypicgo.uploaders.github.uploader.QiNiuUploader
github
pypicgo.uploaders.qiniu.uploader.GithubUploader
SM.MS
pypicgo.uploaders.smms.uploader.SmmsUploader
插件名称
用途
windows
linux
mac
rename
上传前重命名图片
支持
支持
支持
notify
上传成功失败的系统通知
支持
支持
支持
typora
typora编辑器支持
支持
支持
支持
compress
图片上传前压缩
支持
支持
支持
jsdelivr
github CDN 加速
支持
支持
支持
clipboard
上传完成将远程地址复制到剪切板
支持
支持
支持
uploader是具体的上传插件,用户需要继承pypicgo.core.base.uploader.CommonUploader
并实现upload
方法,然后在配置文件中引用即可.
PyPicgo支持的插件分为三种before
、after
和final
插件类型
运行时间
基类类
示例插件
运行时入参
before
在图片上传前运行
pypicgo.core.base.plugin.BeforePlugin
rename
File
after
在图片上传后运行
pypicgo.core.base.plugin.AfterPlugin
notify
Result
final
在所有图片上传后运行
pypicgo.core.base.plugin.FinallyPlugin
typora
List[Result]
如果想自定义插件只要根据要求继承任意一个基类插件,并实现execute
方法,并在config.yml
中配置即可使用.
git clone git@github.com:AnsGoo/PyPicGo.git
cd pypicgo
pipenv shell
pipenv install
python run.py -n 图床名 -f img1.jpg img2.jpg
手机扫一扫
移动阅读更方便
你可能感兴趣的文章