如何利用Python实现Picgo图床工具
这篇文章主要介绍了如何利用Python实现Picgo图床工具,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
一、PyPicGo
PyPicGo 是一款图床工具,是PicGo是Python版实现,并支持各种插件自定义插件,目前PyPicGo自带了gitee、github、SM.MS和七牛云图传,以及rename、notify和typora等插件,并支持从pypi中下载其他插件和Uploader
1、安装
pip install pypicgo
2、配置
配置文件位于/$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.NotifyPluginuploaders: # 可用图床 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
更多的配置说明参考文档
3、使用
帮助信息
pypicgo -h
上传文件
pypicgo -f picture1 picture2 ...
指定上传图床
pypicgo -n github -f picture1 picture2 ...
如果系统找不到pypicgo
,请检查python
的Scripts
文件夹是否被加入Path
环境变量
4、支持的图床
图床名 | 模块地址 |
---|---|
gitee | pypicgo.uploaders.gitee.uploader.GiteeUploader |
七牛云 | pypicgo.uploaders.github.uploader.QiNiuUploader |
github | pypicgo.uploaders.qiniu.uploader.GithubUploader |
SM.MS | pypicgo.uploaders.smms.uploader.SmmsUploader |
5、支持的插件
插件名称 | 用途 | windows | linux | mac |
---|---|---|---|---|
rename | 上传前重命名图片 | 支持 | 支持 | 支持 |
notify | 上传成功失败的系统通知 | 支持 | 支持 | 支持 |
typora | typora编辑器支持 | 支持 | 支持 | 支持 |
compress | 图片上传前压缩 | 支持 | 支持 | 支持 |
jsdelivr | github CDN 加速 | 支持 | 支持 | 支持 |
clipboard | 上传完成将远程地址复制到剪切板 | 支持 | 支持 | 支持 |
6、Uploader上传器
uploader
是具体的上传插件,用户需要继承pypicgo.core.base.uploader.CommonUploader
并实现upload
方法,然后在配置文件中引用即可.
7、插件系统
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
中配置即可使用.
8、开发
git clone git@github.com:AnsGoo/PyPicGo.gitcd pypicgopipenv shellpipenv installpython run.py -n 图床名 -f img1.jpg img2.jpg
感谢你能够认真阅读完这篇文章,希望小编分享的“如何利用Python实现Picgo图床工具”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网行业资讯频道,更多相关知识等着你来学习!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341