因為簡書 Markdown 編輯器的樣式非常漂亮叶组,所以我已經(jīng)很久沒更博客了。另一方面历造,簡書的編輯器在 Markdown 語法上考慮了很多細節(jié)甩十,非常貼心,所以喜歡在簡書寫東西吭产。
但如果能把簡書的文章同步發(fā)布到自己的博客上侣监,就兩全其美啦,所以折騰吧臣淤。
要實現(xiàn)同步簡書文章到獨立博客橄霉,需要以下步驟:
- 導出簡書文章,在簡書后臺可以直接導出自己的全部文章邑蒋。但是導出文章時需要登錄姓蜂,而簡書登錄時需要拖動驗證,模擬登錄不好辦医吊,所以直接用本地 cookies 來導出文章钱慢。
- 導出文章是一個壓縮包,可以寫個腳本自動解壓卿堂,但是壓縮包里面包括未發(fā)表的草稿束莫,需要寫腳本區(qū)分開來懒棉,避免把草稿也發(fā)布出去。
- 因為我是用 Hexo 生成靜態(tài)博客的览绿,所以文章的開頭需要有一個固定格式的頭部信息策严,供 Hexo 解析⌒眩可以通過腳本解析簡書上的“發(fā)表日期”享钞、文章標題、分類等一系列信息诀蓉,并自動添加到文章頭部栗竖。
- 接下來實現(xiàn)文件夾有變動,自動推送到 Github渠啤,然后通過持續(xù)構建自動生成新的靜態(tài)頁面狐肢,完成同步發(fā)布。
以上就是大體思路了沥曹,總結一下需要實現(xiàn)的功能:
- 獲取簡書 cookies份名,然后下載全部文章。難點在于解密 Chrome 的 cookies(剛才看了下 remember_user_token 是加密的)妓美,不過早有人造好了輪子僵腺,我們去裝上用就好了。
- 解壓什么的好說壶栋,難點是草稿和已發(fā)布文章混在一起難以區(qū)分辰如,我的解決辦法是在每一篇未發(fā)布文章的標題加上一個標記,例如:
[草稿]
贵试。平時寫文章時自己記得加上標記即可琉兜。這是一個方法,但是感覺好麻煩毙玻。所以換個思路豌蟋,在后臺新建一個名為“草稿”的文集,然后把未發(fā)表的文章全丟那里桑滩,這樣程序就容易區(qū)分了梧疲,不過草稿太多的話會導致管理困難≡俗迹總之我還沒決定這里要怎么做幌氮,大伙說來聽聽也可以。 - 接下來要給文章加入 Hexo 頭部信息戳吝,以便構建靜態(tài)頁面浩销。需要解決的問題有很多,不過整體沒感覺什么難點听哭,就是瑣碎了些慢洋。
- 檢測文件夾有變動就自動推送 Github塘雳,這一點沒有問題。持續(xù)構建也沒問題普筹。
寫到這里败明,突然覺得,我好像想多了太防。大概可以更精簡這個過程妻顶,比如在后臺點擊發(fā)布文章就同時發(fā)布到自己博客⊙殉担可以通過 Chrome 插件實現(xiàn)讳嘱?
以上。