一个可编辑与新增博客园文章的 Python 脚本
我的个人独立博客是基于 Hexo 搭建的,因为小站,Google 搜索引擎收录文章比较慢,还搜不到
很多人学习python,不知道从何学起。
很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
很多已经做案例的人,却不知道如何去学习更加高深的知识。
那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!
QQ群:1097524789
为了解决这个问题,希望把文章也顺便发布到博客平台博客园上。但不想每次手动复制粘贴,打算利用脚本实现,希望除了发布,并且还能更新文章。原来打算找到博客园接口,模拟操作接口实现。搜索发现博客园提供了 MetaWeblog 接口,所以利用接口,开发了一个这个脚本。源码地址
如何使用这个脚本
博客园 -> 管理 -> 设置 -> 允许 MetaWeblog 博客客户端访问
在 cnblogs-post.py
中配置:
1 2 3 4 5 6 |
config = {'url': 'https://rpc.cnblogs.com/metaweblog/deppwang', # 你的 MetaWeblog 访问地址'username': 'DeppWangXQ', # 你的登录用户名,可能跟上面的不一致'password': '12345678' # 你的登录密码'local_post_path': '/Users/yanjie/GitHub/HexoBlog/source/_posts/' # 你的本地博文路径 } |
在文章开头,添加文章信息块,至少需要包括 title 和 tags,格式如下:
1 2 3 4 5 6 7 8 |
--- title: 一个可编辑与新增博客园文章的 Python 脚本 english_title: a-python-script-to-edit-and-add-cnblogs-posts date: 2020-06-20 20:48:37 tags: 博客园 categories: Tools --- 正文开始 ... |
脚本根据文章名称来判断是否已经发布,如果已经发布,更新,否则新增。默认只操作最近修改文章,但也可以指定文章数量(count)
1 2 |
python3 cnblogs-post.py [count] # macOS/Linux python cnblogs-post.py [count] # Windows |
删除最近发布文章
1 2 |
python3 cnblogs-post.py delete # macOS/Linux python cnblogs-post.py delete # Windows |
核心代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
import xmlrpc.client import sslssl._create_default_https_context = ssl._create_unverified_contextconfig = {'url': 'https://rpc.cnblogs.com/metaweblog/deppwang','username': '', # username 为登录用户名'password': '''local_post_path': '' }class MetaWeblog:def __init__(self, url, username, password):self.url, self.username, self.password = url, username, passwordself.proxy = xmlrpc.client.ServerProxy(self.url)def getRecentPosts(self, count):return self.proxy.metaWeblog.getRecentPosts('', self.username, self.password, count)def main():metaWeblog = MetaWeblog(config['url'], config['username'], config['password'])posts = metaWeblog.getRecentPosts(100) |
一文多发
脚本只实现发布、更新文章到博客园。如果想实现一文多发,可使用 OpenWrit,或自己开发相应脚本,方法为找到相应接口,使用模拟操作接口的方式实现
参考
一个可编辑与新增博客园文章的 Python 脚本相关推荐
- 一个最简单的博客园文章密码暴力破解器-python3实现
一个最简单的博客园文章密码暴力破解器-python3实现 我之前想写路由器的密码暴力破解器,我手上只有极路由,发现极路由有安全限制,只能允许连续10密码错误,所以我改拿博客园练手. 博客园的博客有个功 ...
- python密码破解工具_一个最简单的博客园文章密码暴力破解器-python3实现
一个最简单的博客园文章密码暴力破解器-python3实现 我之前想写路由器的密码暴力破解器,我手上只有极路由,发现极路由有安全限制,只能允许连续10密码错误,所以我改拿博客园练手. 博客园的博客有个功 ...
- 【开源】博客园文章编辑器4.0版发布
源起 最近个人时间多起来了: 于是打算持续写一点东西: 前面写了两篇关于riot.js的东西: 被博客园的领导移出首页了: 原因之一是排版不整齐: 确实是不整齐,这我认, 然而,我自己可是博客园文章编 ...
- 在线文本替换工具 、支持正则表达式(博客园文章里添加Javascript或<script>语句)
概况与介绍 在博客园发布一篇文章,文章就是<在线文本替换工具 .支持正则表达式>https://www.cnblogs.com/lsllll44/articles/15522697.htm ...
- python博客园_用Python向博客园发布新文章
最近在开发一个博客系统,经常把写的东西放在自己网站的博客上(之前写在Onenote),然后我在博客园也申请了一个博客,就有了同样一篇文章,我需要复制粘贴排版分别提交两次的情况.于是我就想能不能在我的网 ...
- 博客园文章方块背景格式
有小伙伴问到方格背景的问题,所以写一篇文章记录我的博客园文章背景是如何制作的. 一.辅助网站1. 一键排版2. 代码主题3. 复制二. 图床设置 一.辅助网站 辅助网址:Md2All 作者提供了一篇帮 ...
- 博客园文章自动生成导航目录
文章如果比较长的话,子标题很难找,文章结构没法一目了然,如果有一个导航目录靠在边栏就好了 看了很多园子里其他的文章,js和css挺长的,怕用不好,干脆自己尝试写一个 一.要实现的功能 1.自动生成 不 ...
- [开源] 分享导出博客园文章成本地 Markdown 文件存储的工具
此文主要分享了如何将自己博客园的文章自动导出到 Markdown 文档进行存储,以便在本地进行归档管理,程序中也对文章的分类.tag.代码块以及文章中的图片进行了保存处理,以便上传到自己的图. 整理后 ...
- 博客园 文章和随笔区别
之前一直对随笔和文章比较迷惑,不太清楚它们之间的区别,今天仔细了解一下,发现一直误解了这两个概念. 首先从内容上区分一下随笔和文章 随笔内容形式比较随意,往往是作者即兴写的内容:而文章则是作者经过仔细 ...
最新文章
- 深度优先搜索——八皇后问题(洛谷 P1219)
- java实验检查危险品代码_2019JAVA第六次实验报告
- .net下调用WebService
- 路由器IP-4-DUPADDR: Duplicate address和CDP-4-DUPLEX_MISMATCH错误的解决方案
- hbase 预写日志_HDInsight HBase 加速写入现已正式发布
- 关于代码整理重构小记
- jquery 选择器 空格、大于、加号、波浪线区别
- 微型计算机机房湿度不宜过大,全国计算机一级考试选择题试题与详细答案(免费)...
- 《算法分析与设计》 第一章 算法设计基础 基本知识点
- Bill Gates推荐,人工智能必读的三本书 -《终极算法》,《超级智能》和《终极发明》zz
- 麟龙指标通达信指标公式源码_麟龙指标套五(通达信指标公式)源码
- 【Axure原型】新闻资讯客户端APP原型 今日头条同类APP实战原型
- 微信公众号排版 | 汇总和实战
- 华为云挂载磁盘及初始化数据盘(Linux)
- 列主元Guass消去法
- XYNUOJ 第四次比赛 懒省事得小名
- iPhone 13,战略性“不香”!
- action = “store_true
- python面试题 网络编程和并发(34道题)
- js如何判断变量的数据类型
热门文章
- django-关闭调试模式-保护网站安全
- Linux通过进程号查询占用的端口
- ThinkPHP3.2 下载、导入、导出功能的设计与实现
- Python学习入门基础教程(learning Python)--1.2.1 Python输出语句print基本使用 .
- C下的全局变量和指针 - C/C++ / C语言
- HTML5的Histroy API
- RestAPI的进化之路,后端MVVM模式或许来临,通过观察者模式,后端收集前端的GET类请求,主动推送数据变更到前端
- Yarn 国内加速,修改镜像源
- 容器编排技术 -- Kubernetes kubectl create clusterrole 命令详解
- impdp时报错ORA-39082的原因