標籤:

有沒有相對比較成熟的python寫的類似jekyll的靜態頁面生成器,可以利用github pages搭建博客的?


有, 推薦 Pelican,支持Markdown和ReStructuredText完全能夠滿足題主的要求,且有不少漂亮的主題可供選擇。

  • Pelican 3 documentationhttp://docs.getpelican.com/en/3.1.1/

  • Github主頁 https://github.com/getpelican/pelican
  • 主題 https://github.com/getpelican/pelican-themes
  • Some history about Pelican http://dym.me/some-history-about-pelican.html (自己翻譯的,但我對編程知之甚少,如有不對還請指正)


哦?最近才寫了一個,也就是我的博客Follow My Heart使用的: https://github.com/hit9/lilac

只是支持markdown, 不支持rst.

而且不成熟 :)

1. 100% in Python

2. jinja2模板語言。如果自己會python的話,可以自己修改模板,製作模板

3. 最簡的博客支持: tag, feed , 代碼高亮。

4. Github 風格的markdown語法

5. 使用 toml 作為配置語言,也作為文章的屬性語言。

========================= 分割線 ===================

時隔一年,lilac已死,替代品為:https://github.com/hit9/rux

demo: Sunshine Every Day

demo: 愛你不言而喻

======================== 分割線======================

時隔半年,更新下 rux 的 demo地址 (它的誕生是為了我寫愛情日記而已)

demo http://hit9.github.io


pelican搭建屬於自已的博客

pelican創建博客常見問題匯總

博客添加第三方評論系統多說評論框

pelican創建博客如何設置導航條

pelican博客搭建設置分頁和分頁保存位置


雖然我用的是pelican,但是pelican中依賴的markdown模塊(是的,這個module的名字就叫markdown)對於代碼高亮的處理有些問題,所以不太推薦。我自己的做法是用misaka替換了pelican裡面的markdown模塊。這個修改比較暴力,直接在源碼里改的。

詳見:用Misaka做為pelican的Markdown解析器

== 這是私貨的分割線 ==

自己寫過一個基於Python + Github Pages的靜態站點的生成器。絕對談不上成熟,頂多是個玩具。這裡想說一下,是想告訴題主:用著不爽就自己擼一個,絕對不難。

intgraph/intgraph-backend · GitHub

IntGraph(http://intgraph.wizmann.tk/)是一個類似Leetcode的網站,只是沒有OnlineJudge部分,只有題目和題解。

其中前端使用了Bootstrap3和AngularJS。

後端代碼生成使用了:

* Markdown解析 - Misaka 和 PyParsing(給Markdown加了一點新特性,只是把一個md文件切分成三段,分別解析或渲染)

* HTML模板生成 - jinja2

* 代碼高亮 - pygments

實現這個東西大概用了四天吧,所以不是太乾淨。不過絕對是可用的。直觀上也不會有粗製濫造的感受。


pelican是一個很好的框架,相對輕便易用,只需要做一些小的設置便可以運行,可以點擊我的博客http://metaquant.org 看看效果,使用了自己設計的主題。其實所有靜態博客生成器的原理都類似,選擇一門自己熟悉的語言,可以增強自己對框架的把控能力,


推薦閱讀:

Python 初學者想通過 Django 框架寫一個博客,一個月內完成任務,大致的學習路線怎麼安排?
Python爬蟲之微打賞爬蟲
用 Kleene 遞歸定理構造輸出自己的 Python 程序
Python3 簡明教程

TAG:博客 | Python |