部落格園自動化之過程調研

趙青青發表於2021-09-23

前言

本文記錄我的《自動化釋出文章到部落格園》過程中的調研,文中提到的程式碼和軟體我都有試用,最終我的解決方案是自己編寫python指令碼進行自動化釋出文章。

我的程式碼

我自己編寫自動釋出python程式碼,放在我的github上,點我下載

自動化釋出文章到部落格園-系列

部落格園自動化之XML-RPC

部落格園自動化之MetaWeblog

部落格園自動化之過程調研

部落格園自動化之圖床選擇

自動化釋出文章到知乎-系列

自動化釋出文章到知乎的探索

知乎vscode外掛修改和重新編譯

部落格園限制項

提示資訊:post error:<Fault 500: '30秒內只能釋出1篇博文,請稍候釋出,聯絡郵箱:contact@cnblogs.com'>

部落格園站點限制每30秒只能釋出一次,建議閥值設定在60s

getRecentPost介面最大隻能獲取最近100篇釋出的文章

cnblogs_automatic_blog_uploading

本指令碼用python3.+編寫,請配置好執行環境。

執行cnblogs.py

  1. 程式有幾個可選引數(如無特殊需求不要新增引數)。
    • cnblog.py publish 釋出正式目錄下所有md為正式文章
    • cnblog.py unpublished 釋出到草稿目錄下所有md檔案到草稿箱
    • cnblog.py download 下載文章
  2. 第一次執行cnblogs.py需要設定部落格資訊,會生成一個blog_config.json檔案(檔案內有部落格園賬號密碼,請勿提交到git)。
  3. 此後每次執行程式時,./article_publish/*.md將被上傳到部落格併發布;./article_draft/*.md將被上傳到部落格,但不釋出(並標註分類“unpublished”),釋出完成後目錄下的檔案將被刪除,所以建議儲存源md檔案。文章均以檔名為題,且不釋出的文章。如果部落格中已經存在同名文章,將替換其內容!

原地址:https://github.com/nickchen121/cnblogs_automatic_blog_uploading

存在問題

目錄下的文章釋出完成之後,刪除檔案會出現提示:檔案佔用中無法刪除,導致無法繼續釋出下一篇

獲取最近釋出文章大於9就會出現錯誤提示,經測試部落格園正常是可以獲取100篇最近文章的。

這是我的部落格中某一篇文章在解析xml時出現錯誤

PS. 以上問題通過自己修改指令碼已解決

寫作助手(BlogHelper)

缺點:對於部落格中已經存在的文章不是更新,而是會發篇一新的

它提供的是介面化的操作,對於我的需求還是更傾向於命令列可以批量操作

自定義指令碼

cnblogs-post

https://github.com/DeppWang/cnblogs-post

使用ruby編寫的

https://github.com/personball/personball.github.io/blob/068b144f5ed08999f2b6323b3ade62bd429574cc/_posts/2017-08-31-how-to-sync-post-to-cnblogs-with-ruby.md

老趙的F#經驗

一次批量修改部落格文章的經驗(上):準備工作

用vscode寫部落格和釋出

用vscode寫部落格和釋出

ArtiPub

原始碼使用js開發,是一整套的多部落格自動釋出工具,可釋出到多個部落格。

需要安裝MongoDB 資料庫,分前後端

稍微有些複雜

小書匠

文件:http://soft.xiaoshujiang.com/docs/

2017年使用的時候,印象中提供本地客戶端版本,現在是雲端版本

用C#開發一鍵釋出到部落格園

自己開發一個一鍵同步文章到部落格園,方便自己的需求,主要原因還是對於python不熟悉,當除錯或修改他人指令碼不方便,從github查詢發現這幾個已有的C#專案:

EasyBlogImageForTypora

https://github.com/xiajingren/EasyBlogImageForTypora

使用Typora寫作,圖片即時同步到部落格網站,無需第三方圖床,寫完可直接貼上。支援網路圖片上傳。

本程式基於.net core 3.1開發,支援在win-x64,mac osx-x64系統執行,免安裝。linux暫時不考慮,如果有需要再說。

程式的上傳服務是使用MetaWebBlog API,MetaWebBlog API(MWA)是一個Blog程式的介面標準,理論上支援MetaWebBlog API標準的部落格網站,都可以使用本程式來上傳圖片,你只需要在程式中配置一下你的部落格基本資訊即可。目前我自己測試通過的有部落格園、開源中國(oschina);CSDN的介面貌似不能用了。

BlogSyner

https://github.com/AntBean/BlogSyner

2013年的一份老程式碼用於部落格同步

OpenWrite

官網:https://openwrite.cn/

普通使用者文章擴散次數10次/月,開會員19.9元/月

線上編寫markdown文章同步到多個平臺,包括部落格園,知乎,CSDN,微信公眾號,頭條號,類似於以前接SDK時的稜鏡?

html轉md

html_to_md 部落格園html自動轉成markdown格式

原理《使用python轉換markdown to html

相關文章