博客園自動發布/更新博客系統


一、cnblogs_automatic_blog_uploading

博客園上傳博客過於麻煩,怎么辦,自動上傳/更新博客來一套,簡單到網頁都不需要打開,賬號密碼都不需要輸入,懶是唯一的生產力。

基於rpcxml協議,利用githook,在commit時自動發布本地markdown文章到博客園,如文章已發布,則會更新。

二、項目地址

項目地址:https://github.com/nickchen121/cnblogs_automatic_blog_uploading

三、參考效果

參考效果:https://www.cnblogs.com/nickchen121/p/10718112.html

四、使用說明

本腳本用python3.+編寫,請配置好運行環境。

  1. 第一次使用前先把./hooks/commit-msg文件復制到./.git/hooks/中(如有則無需修改)。
  2. 運行cnblogs.py
    1. 程序有一個可選參數(如無特殊需求不要添加參數)。
      • config 設置博客信息。
      • download 下載文章。
    2. 第一次運行cnblogs.py時默認選擇config參數,設置博客信息,會生成一個blog_config.json文件(文件內有博客園賬號密碼,小心使用)。
    3. 此后每次運行程序時,./articles/*.md將被上傳到博客並發布;./unpublished/*.md將被上傳到博客,但不發布(並標注分類“unpublished”)。文章均以文件名為題,且不發布的文章。如果博客中已經存在同名文章,將替換其內容!
  3. 編輯./articles/./unpublished/中markdown文件,在本地git倉庫commit更改,自動運行./cnblogs.py(需要使用終端命令才能查看返回信息)。

五、其他腳本

5.1 md文檔添加索引

自動給md文檔添加索引,即:

# 一級標題

## 二級標題

變為

# 一、一級標題

## 1.1 二級標題

5.2 取出文件名序號

如果你的md文件為01 第一篇md.md/02 第一篇md.md/03 第一篇md.md,則會變成第一篇md.md/第一篇md.md/第一篇md.md

5.3 批量修改文檔內容

選擇特定文件目錄,批量修改文件下文件的內容,小心使用

5.4 生成目錄

根據特定的字符串,生成特定的目錄結構,可以參考:https://www.cnblogs.com/nickchen121/p/10718112.html

5.5 讀取title_postid文件

博客上傳成功后,會生成一個title_postid.json文件,里面保存了發布成功文件的信息。

六、注意事項(已知Bug)

  1. 本程序不保證穩定性,為防止數據丟失,建議使用前預先備份博客。
  2. clone倉庫不能下載.git文件夾,因此需要手動復制調用cnblogs.py的腳本./hooks/commit-msg.git
  3. 由於metaWeBlog本身沒有提供查看文章是否已發布的接口,所有使用“unpublished”分類標注未發布文章。也就是說,當執行python cnblogs.py download命令時,博客中沒有發布也沒有“unpublished”分類的文章也會存到./articles/,下次運行時將被自動發布。
  4. 由於接口不允許將已經發布的文章設置為未發布,所以若./unpublished/內的文章在博客內有同名文章時不會被上傳。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM