自从 Python 在数据科学方面火热起来之后,应该很少有人对 Jupyter Notebook 不熟悉的,因为做数据分析或数据处理,它可以说是必备的一个工具。但是,你可能不知道是,Jupyter 还可以用来写书,真实的效果比起 Gitbook 其实也是差不了多少的。
之所以能用来写书,是因为 Jupyter 出了一个类似 bookdown 的工具,叫做 Jupyter Book。今天我们要介绍的,就是如何利用 Jupyter Book 将你的技术笔记或经验沉淀下来,变成一本在线书籍发表哦。
什么是 Jupyter Book?
Jupyter Book 背后的概念,其实很简单:
将 .ipynb 文件,转换成 Markdown 文件 然后使用 Jekyll 生成静态网页
靠着这个机制,可以顺利地将 Jupyter Notebook 文件和 Markdown 文件渲染成网页。官网上介绍了几个特性,比较厉害的有:
支持直接下载 ipynb 文件
可自动添加 Binder、JupyterHub、Theblab 等平台的链接
快速导航、隐藏代码块等等
如何上手?
安装
可以使用 pip
,在终端快速安装 Jupyter Book 的命令行(对,提供了方便的命令行操作):
pip install jupyter-book
创建新书
安装之后,可以使用官网提供的 demo 创建一本新书:
jupyter-book create mybookname --demo
执行完命令行,你就可以在指定的目录下找到生成的文件,结构如下:
mybookname/├── assets│ └── custom│ ├── custom.css│ └── custom.js├── _config.yml├── content│ ├── features│ │ ├── features.md│ │ └── notebooks.ipynb│ └── LICENSE.md├── _data│ └── toc.yml└── requirements.txt
书中的内容,全部在 /content
文件夹的 .md
和 .ipynb
文件里。
具体每个文件的作用,可以前往官网了解详情
渲染内容
内容更新之后,需要执行命令,构建 Jekyll 所需的 Markdown 文件:
jupyter-book build mybookname
到这里,就大工告成了!剩下的工作,就是将内容发布到网上。你可以选择推送到 Github Pages,也可以发布到自己的服务器上。