奇酷教育-Python培训|UI培训|WEB大前端培训|Unity3D培训|HTML5培训|人工智能培训|JAVA开发的教育品牌

您現在所在的位置:首頁 >關于奇酷 > 行業動態 > 使用 Python 30分鐘 教你快速搭建一個博客

使用 Python 30分鐘 教你快速搭建一個博客

來源:奇酷教育 發表于:

0個優秀的程序員里,有9個人都有寫博客的習慣。這是非常好的習慣,它使得知識得以提煉,轉輸出為輸入,在提升自己的同時,還能利用互聯網易

0個優秀的程序員里,有9個人都有寫博客的習慣。這是非常好的習慣,它使得知識得以提煉,轉輸出為輸入,在提升自己的同時,還能利用互聯網易傳播的特性,將知識分享給每一個熱愛學習的人。這是值得每個程序員,投入時間和精力去堅持做下去的事。博客既然是自己的一個知識寶庫,那么索引將變得極為重要。通過自己的探索,小明發現了一個能夠很好地滿足這個需求的 Python 框架 Sphnix。實現的大體的思路如下:

Markdown:書寫文檔

Pandoc:格式轉化

Sphinx:生成網頁

GitHub:托管項目

ReadtheDocs:發布網頁

  •  

 

接下來,就來看看到底是如何實現的?

 

 

01

 

成品展示


 

以我的博客為例,先給大家展示一下。這是首頁。顯示了你所有的文章索引。

這是我的導航欄。是不是結構很清晰,很方便索引。

點擊文章后,還可以很方便查看標題,跳轉。

體驗下搜索功能,速度很快。

看完這些你是不是也很想擁有這樣一個博客呢?只要你認真往下看,30分鐘搭建這樣一個博客不在話下。

02

 

安裝Sphnix


 

安裝之前,請確認下Python版本。我這里使用的是Python 2.7.14,其他版本請自行嘗試(Py3有點不一樣,不想踩坑的,請跟我一樣使用 Py2)。安裝Python工具包$ pip install sphinx sphinx-autobuild sphinx_rtd_theme
初始化# 先創建一個工程目錄:F:\\mkdocs
$ cd F:\\mkdocs

$ sphinx-quickstart
執行這個命令sphinx-quickstart的時候,會讓你輸入配置。除了這幾個個性化配置,其他的都可以按照默認的來。> Project name: MING's BLOG
> Author name(s): MING
> Project release []: 1.0
> Project language [en]: zh_CN
完了后,就可以看見創建的工程文件。F:\mkdocs
(mkdocs) λ ls -l
total 5
-rw-r--r-- 1 wangbm 1049089 610 Jun 23 16:57 Makefile
drwxr-xr-x 1 wangbm 1049089   0 Jun 23 16:57 build/
-rw-r--r-- 1 wangbm 1049089 817 Jun 23 16:57 make.bat
drwxr-xr-x 1 wangbm 1049089   0 Jun 23 16:57 source/

F:\mkdocs
(mkdocs) λ tree
卷 文檔 的文件夾 PATH 列表
卷序列號為 0002-B4B9
F:.
├─build
└─source
    ├─_static
    └─_templates
解釋下這些文件/夾:

build:文件夾,當你執行make html的時候,生成的html靜態文件都存放在這里。

source:文件夾:你的文檔源文件全部應全部放在source根目錄下。

Makefile:編譯文件。完全不用管。

make.bat:bat腳本。你也不用管。

  •  

 

03

 

配置及擴展


 

Sphinx 的配置文件是 source\conifg.py由于修改的內容比較多而雜,為了使這個搭建過程,更加順暢。小明已經給你精心準備了一份配置文件。你只要關注我的公眾號,后臺直接回復「Sphinx」即可獲取。關于配置文件,我做了哪些事:

配置主題

支持LaTeX

支持中文檢索

以上配置文件,需要搭配擴展模塊才能使用。擴展模塊同樣我也給你準備好了,在你回復「Sphinx」后,獲取壓縮包后,里面有個 exts 文件夾。你只要將這個文件夾原封不動的放置在與source的同級目錄下即可。由于擴展模塊會用到一些第三方依賴包,需要你去包裝它。requirements.txt 同樣我也給你準備好了,在壓縮包里有。你只要執行這個命令,即可安裝。pip install -r requirements.txt -i  www.idiancai.com/simple/
 

04

 

撰寫文章


萬事俱備,接下來要寫文檔了。在source目錄下,新增文件 how_to_be_a_rich_man.rst(至于什么是rst格式呢,請自行搜索引擎噢)文件內容如下第一章 如何成為有錢人
======================

1.1 財富繼承法
---------------------

有個有錢的老爸。


1.2 財富共享法
---------------------

有個有錢的老婆。
寫好文檔后,千萬記得要把這個文檔寫進,目錄排版里面。排版配置文件是 source\index.rst,千萬要注意中間的空行不可忽略。.. toctree::
:maxdepth: 2
:caption: Contents:

   how_to_be_a_rich_man
然后刪除這幾行Indices and tables
==================

* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`
然后執行make html 生成html靜態文件。F:\mkdocs
(mkdocs) λ make html
Running Sphinx v1.7.4
loading translations [zh_CN]... done
loading pickled environment... done
building [mo]: targets for0 po files that are outof date
building [html]: targets for2 source files that are outof date
updating environment: [extensions changed] 2 added, 0 changed, 0 removed
reading sources... [100%] index
looking for now-outdated files... none found
pickling environment... done
checking consistency... done
preparing documents... done
writing output... [100%] index
generating indices... genindex
writing additional pages... search
copying static files... done
copying extra files... done
dumping search indexin English (code: en) ... done
dumping object inventory... done
build succeeded.

The HTML pages are in build\html.
執行完了后,你可以發現原先的build,不再是空文件夾了。我們點進去www.smpeizi.com/ build/html/,打開index.html

點擊 我們剛寫的暴富指南。

05

 

托管項目


 

看到網頁的那一刻是不是相當激動。不過別激動,這只是本地的,我們需要將其發布在線上。這里我將工程文件,托管在GitHub上,然后由Read the Docs發布。在托管之前呢,我們需要準備工作。在mkdocs根目錄下,添加文件.gitignore(聰明的你,肯定知道這是什么),內容如下build/
.idea/
*.pyc
接下來,在你的GitHub上新建一個倉庫。然后把mkdocs這個目錄下的所有文件都提交上去。步驟很簡單,這里就不細講。

06

 

發布上線


托管完成后,我們要發布它,讓別人可以訪問。你需要先去 Read the Docs 注冊下帳號。關聯一下GitHub

 

導入代碼庫。填好與你對應的信息。

 

構建網頁后。右下方,你可以看見你的在線地址www.pzzs168.com。

 

這里要提醒一下的是,Sphinx的文檔格式,默認是 rst 格式,如果你習慣了使用Markdown來寫文章,可以使用 Pandoc 這個神器轉換一下。

這里給出轉換命令。

pandoc -V mainfont="SimSun" -f markdown -t rst hello.md -o hello.rst

或者你也可以在Sphinx上添加支持Markdown渲染的擴展模塊及配置。也很簡單,但是,我發現使用 md 文件,在網站上的導航無法實現跳轉。

到這里,屬于你的個人博客就搭建好了,快去試一下吧。????

主站蜘蛛池模板: 深圳高新投三江工业消防解决方案提供厂家_服务商_园区智慧消防_储能消防解决方案服务商_高新投三江 | 水冷散热器_水冷电子散热器_大功率散热器_水冷板散热器厂家-河源市恒光辉散热器有限公司 | 冷水机-工业冷水机-冷水机组-欧科隆品牌保障| 尾轮组_头轮组_矿用刮板_厢式刮板机_铸石刮板机厂家-双驰机械 | 纯水电导率测定仪-万用气体检测仪-低钠测定仪-米沃奇科技(北京)有限公司www.milwaukeeinst.cn 锂辉石检测仪器,水泥成分快速分析仪-湘潭宇科分析仪器有限公司 手术室净化装修-手术室净化工程公司-华锐手术室净化厂家 | 即用型透析袋,透析袋夹子,药敏纸片,L型涂布棒-上海桥星贸易有限公司 | 排烟防火阀-消防排烟风机-正压送风口-厂家-价格-哪家好-德州鑫港旺通风设备有限公司 | 手板-手板模型-手板厂-手板加工-生产厂家,[东莞创域模型] | 交变/复合盐雾试验箱-高低温冲击试验箱_安奈设备产品供应杭州/江苏南京/安徽马鞍山合肥等全国各地 | 耳模扫描仪-定制耳机设计软件-DLP打印机-asiga打印机-fitshape「飞特西普」 | 卡诺亚轻高定官网_卧室系统_整家定制_定制家居_高端定制_全屋定制加盟_定制家具加盟_定制衣柜加盟 | 安全阀_弹簧式安全阀_美标安全阀_工业冷冻安全阀厂家-中国·阿司米阀门有限公司 | 水冷式工业冷水机组_风冷式工业冷水机_水冷螺杆冷冻机组-深圳市普威机械设备有限公司 | 黄石东方妇产医院_黄石妇科医院哪家好_黄石无痛人流医院 | PC构件-PC预制构件-构件设计-建筑预制构件-PC构件厂-锦萧新材料科技(浙江)股份有限公司 | Magnescale探规,Magnescale磁栅尺,Magnescale传感器,Magnescale测厚仪,Mitutoyo光栅尺,笔式位移传感器-苏州连达精密量仪有限公司 | 济南冷库安装-山东冷库设计|建造|冷库维修-山东齐雪制冷设备有限公司 | 胶水,胶粘剂,AB胶,环氧胶,UV胶水,高温胶,快干胶,密封胶,结构胶,电子胶,厌氧胶,高温胶水,电子胶水-东莞聚力-聚厉胶粘 | 九爱图纸|机械CAD图纸下载交流中心 | 特材真空腔体_哈氏合金/镍基合金/纯镍腔体-无锡国德机械制造有限公司 | 天津蒸汽/热水锅炉-电锅炉安装维修直销厂家-天津鑫淼暖通设备有限公司 | 红立方品牌应急包/急救包加盟,小成本好项目代理_应急/消防/户外用品加盟_应急好项目加盟_新奇特项目招商 - 中红方宁(北京) 供应链有限公司 | 中医中药治疗血小板减少-石家庄血液病肿瘤门诊部 | 盛源真空泵|空压机-浙江盛源空压机制造有限公司-【盛源官网】 | 电子元器件呆滞料_元器件临期库存清仓尾料_尾料优选现货采购处理交易商城 | 高铝矾土熟料_细粉_骨料_消失模_铸造用铝矾土_铝酸钙粉—嵩峰厂家 | 机械加工_绞车配件_立式离心机_减速机-洛阳三永机械厂 | 恒压供水控制柜|无负压|一体化泵站控制柜|PLC远程调试|MCGS触摸屏|自动控制方案-联致自控设备 | 继电器模组-IO端子台-plc连接线-省配线模组厂家-世麦德 | 隧道窑炉,隧道窑炉厂家-山东艾瑶国际贸易 | 高柔性拖链电缆-聚氨酯卷筒电缆-柔性屏蔽电缆厂家-玖泰电缆 | 胶辊硫化罐_胶鞋硫化罐_硫化罐厂家-山东鑫泰鑫智能装备有限公司 意大利Frascold/富士豪压缩机_富士豪半封闭压缩机_富士豪活塞压缩机_富士豪螺杆压缩机 | 杭州高温泵_热水泵_高温油泵|昆山奥兰克泵业制造有限公司 | 欧美日韩国产一区二区三区不_久久久久国产精品无码不卡_亚洲欧洲美洲无码精品AV_精品一区美女视频_日韩黄色性爱一级视频_日本五十路人妻斩_国产99视频免费精品是看4_亚洲中文字幕无码一二三四区_国产小萍萍挤奶喷奶水_亚洲另类精品无码在线一区 | 科研ELISA试剂盒,酶联免疫检测试剂盒,昆虫_植物ELISA酶免试剂盒-上海仁捷生物科技有限公司 | RV减速机-蜗轮蜗杆减速机-洗车机减速机-减速机厂家-艾思捷 | 超声波破碎仪-均质乳化机(供应杭州,上海,北京,广州,深圳,成都等地)-上海沪析实业有限公司 | 智能楼宇-楼宇自控系统-楼宇智能化-楼宇自动化-三水智能化 | 磁力反应釜,高压釜,实验室反应釜,高温高压反应釜-威海自控反应釜有限公司 | 吉祥新世纪铝塑板_生产铝塑板厂家_铝塑板生产厂家_临沂市兴达铝塑装饰材料有限公司 | 灰板纸、灰底白、硬纸板等纸品生产商-金泊纸业 |