用Pelican搭建一个极简静态博客系统过程解析


Posted in Python onAugust 22, 2019

我一直建议每个开发者都要有写博客记笔记的习惯,一来可以沉淀知识,二来可以帮助别人,我使用过很多博客平台,也用Python开发过博客系统,就这么个东西折腾好几年,一直找不到理想的产品,直到我用Pelican之前。

Pelican 是基于Python实现的开源静态博客系统,所谓静态博客系统就是无需数据库,每一篇文章会事先渲染成HTML静态文件,访问速度非常快。所以今天给大家介绍下怎么使用Pelican。

使用Pelican 你需要了解一点git,熟悉基本的Linux shell 命令,懂一点Python知识,如果都不懂,没关系,只要确保你已经安装了Python环境,跟着我的步骤来

安装 pelican

pip install pelican markdown --upgrade

创建项目

D:\my>mkdir blog # 创建项目目录
D:\my>cd blog # 进入项目目录
D:\my\blog>pelican-quickstart # 生成pelican骨架
Welcome to pelican-quickstart v3.7.1.
This script will help you create a new Pelican-based website.
Please answer the following questions so this script can generate the files
needed by Pelican.
...
Done. Your new project is available at D:\my\blog

安装过程过,会有很多需要你输入的配置项,如果不知道怎么填就直接忽略或者选择n,因为这些配置项在后面可以自己手动再添加的。

创建完成后生成的目录结构如下:

.
├── Makefile
├── content/
├── develop_server.sh
├── fabfile.py
├── output/
├── pelicanconf.py
└── publishconf.py

你的文章需要保存在content目录下,通常情况我们写文章采用markdown语法,所以,现在我们在content目录创建一篇文章,文章内容:

```python Title: 这是我的第一篇技术博客 Date: 2019-04-24 13:47:06 Category: 技术 Tags: python Slug: hello-world Summary: 这是我的第一篇技术博客,欢迎捧场

这是我的第一篇技术博客,欢迎捧场,第一次写文章,还没想好怎么写,所有就随便写了一点儿。

将文章保存在 `D:\my\blog\content\hello_world.md`。 
### 生成静态文件
上面编写的内容只是我们的原始文章,最终需要经过 Pelican 的处理生成一个html格式的静态文件对外提供访问。

pelican content

执行完成后,`output` 目录会多出一些文件,markdown文件最终也会转换成html文件放到该目录下。
### 启动服务
Pelican 自己内置了一个HTTP Server,所以即使不需要Nginx也可以将程序运行起来。

pelican --listen ```

启动 http 服务,默认端口是8000,访问:http://localhost:8000/

用Pelican搭建一个极简静态博客系统过程解析

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
简单的Apache+FastCGI+Django配置指南
Jul 22 Python
Python的爬虫框架scrapy用21行代码写一个爬虫
Apr 24 Python
python实现拓扑排序的基本教程
Mar 11 Python
python 实现矩阵上下/左右翻转,转置的示例
Jan 23 Python
python sort、sort_index方法代码实例
Mar 28 Python
pytorch 共享参数的示例
Aug 17 Python
对Python获取屏幕截图的4种方法详解
Aug 27 Python
详解如何在cmd命令窗口中搭建简单的python开发环境
Aug 29 Python
详解Python time库的使用
Oct 10 Python
Python 异常处理Ⅳ过程图解
Oct 18 Python
Python猴子补丁Monkey Patch用法实例解析
Mar 23 Python
numpy array找出符合条件的数并赋值的示例代码
Jun 01 Python
Django admin.py 在修改/添加表单界面显示额外字段的方法
Aug 22 #Python
Django stark组件使用及原理详解
Aug 22 #Python
Python学习笔记之字符串和字符串方法实例详解
Aug 22 #Python
Python学习笔记之列表和成员运算符及列表相关方法详解
Aug 22 #Python
Django上线部署之IIS的配置方法
Aug 22 #Python
对python中UDP,socket的使用详解
Aug 22 #Python
python3的url编码和解码,自定义gbk、utf-8的例子
Aug 22 #Python
You might like
PHP防止注入攻击实例分析
2014/11/03 PHP
浅谈PHP检查数组中是否存在某个值 in_array 函数
2016/06/13 PHP
filemanage功能中用到的common.js
2007/04/08 Javascript
javascript parseInt 大改造
2009/09/27 Javascript
Jquery中获取iframe的代码
2011/01/11 Javascript
基于jquery的滚动条滚动固定div(附演示下载)
2012/10/29 Javascript
js中escape对应的C#解码函数 UrlDecode
2012/12/16 Javascript
原生js操作checkbox用document.getElementById实现
2013/10/12 Javascript
javascript 获取函数形参个数
2014/07/31 Javascript
javascript实现禁止复制网页内容
2014/12/16 Javascript
javascript数组去重方法汇总
2015/04/23 Javascript
Jquery 自定义事件实现发布/订阅的简单实例
2016/06/12 Javascript
最佳的JavaScript错误处理实践
2016/07/16 Javascript
Angular.js中用ng-repeat-start实现自定义显示
2016/10/18 Javascript
js 递归和定时器的实例解析
2017/02/03 Javascript
jquery easyui如何实现格式化列
2017/07/30 jQuery
微信小程序实现留言板(Storage)
2018/11/02 Javascript
Vue仿微信app页面跳转动画效果
2019/08/21 Javascript
jquery实现购物车基本功能
2019/10/25 jQuery
uniapp实现可以左右滑动导航栏
2020/10/21 Javascript
Python ljust rjust center输出
2008/09/06 Python
python 字符串split的用法分享
2013/03/23 Python
Python中的变量和作用域详解
2016/07/13 Python
浅谈numpy数组中冒号和负号的含义
2018/04/18 Python
Python3+Appium安装使用教程
2019/07/05 Python
基于Python 中函数的 收集参数 机制
2019/12/21 Python
Python configparser模块应用过程解析
2020/08/14 Python
巴西最大的在线约会网站:ParPerfeito
2018/07/11 全球购物
意大利一家专营包包和配饰的网上商店:Borse Last Minute
2019/08/26 全球购物
主管会计岗位责任制
2014/02/10 职场文书
竞选班干部演讲稿
2014/04/24 职场文书
2014年个人年终总结
2015/03/09 职场文书
Pandas||过滤缺失数据||pd.dropna()函数的用法说明
2021/05/14 Python
教你利用Selenium+python自动化来解决pip使用异常
2021/05/20 Python
Python实现老照片修复之上色小技巧
2021/10/16 Python
mysql5.6主从搭建以及不同步问题详解
2021/12/04 MySQL