用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 相关文章推荐
Python群发邮件实例代码
Jan 03 Python
Python中的Numeric包和Numarray包使用教程
Apr 13 Python
详细解析Python中的变量的数据类型
May 13 Python
简单学习Python time模块
Apr 29 Python
Python中 传递值 和 传递引用 的区别解析
Feb 22 Python
Python统计python文件中代码,注释及空白对应的行数示例【测试可用】
Jul 25 Python
Python实现去除图片中指定颜色的像素功能示例
Apr 13 Python
python 计算平均平方误差(MSE)的实例
Jun 29 Python
Python 模拟动态产生字母验证码图片功能
Dec 24 Python
Python读取YAML文件过程详解
Dec 30 Python
使用OpenCV获取图像某点的颜色值,并设置某点的颜色
Jun 02 Python
如何查看python关键字
Jan 17 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之变量、常量学习笔记
2008/03/27 PHP
PHP生成数组再传给js的方法
2014/08/07 PHP
php readfile()修改文件上传大小设置
2017/08/11 PHP
Laravel5.1 框架Middleware中间件基本用法实例分析
2020/01/04 PHP
PHP实现微信公众号验证Token的示例代码
2019/12/16 PHP
jquery 循环显示div的示例代码
2013/10/18 Javascript
JS读取XML文件示例代码
2013/11/15 Javascript
js的Boolean对象初始值示例
2014/03/04 Javascript
node.js中的fs.open方法使用说明
2014/12/17 Javascript
jQuery之DOM对象和jQuery对象的转换与区别分析
2015/01/08 Javascript
Ajax清除浏览器js、css、图片缓存的方法
2015/08/06 Javascript
JavaScript事件方法(实例讲解)
2017/06/27 Javascript
封装Vue Element的table表格组件的示例详解
2020/08/19 Javascript
[51:36]Optic vs Newbee 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
Django中传递参数到URLconf的视图函数中的方法
2015/07/18 Python
Python字符串切片操作知识详解
2016/03/28 Python
Python判断变量是否为Json格式的字符串示例
2017/05/03 Python
Python简单计算文件MD5值的方法示例
2018/04/11 Python
Python3实现将本地JSON大数据文件写入MySQL数据库的方法
2018/06/13 Python
对python requests的content和text方法的区别详解
2018/10/11 Python
对pyqt5之menu和action的使用详解
2019/06/20 Python
Pandas库之DataFrame使用的学习笔记
2019/06/21 Python
Python在cmd上打印彩色文字实现过程详解
2019/08/07 Python
python百行代码自制电脑端网速悬浮窗的实现
2020/05/12 Python
Pandas数据分析的一些常用小技巧
2021/02/07 Python
哥伦比亚加拿大官网:Columbia Sportswear Canada
2020/09/07 全球购物
汉语专业应届生求职信
2013/10/01 职场文书
高级方案规划工程师岗位职责
2013/11/29 职场文书
交通事故赔偿协议书
2014/04/15 职场文书
银行爱岗敬业演讲稿
2014/05/05 职场文书
奠基仪式策划方案
2014/05/15 职场文书
小学美术兴趣小组活动总结
2014/07/07 职场文书
新课培训心得体会
2014/09/03 职场文书
服装区域经理岗位职责
2015/04/10 职场文书
活动费用申请报告
2015/05/15 职场文书
python和anaconda的区别
2022/05/06 Python