使用jupyter notebook直接打开.md格式的文件

时间:2021-05-22

jupyter notebook是一个比较比较不错的网页版python编辑器,但是,由于很多“技术文档”都是直接以markdown(.md格式的文件)的格式编写的,而且jupyter notebook的代码文件(.ipynb)也可以转换成.md格式的文件,更为重要的是,我们从github上下载的很多学习资料也都是.md文件格式的。因此,为了能够在jupyter notebook上实现:

使用jupyter notebook浏览技术文档;

将转换成.md格式的python代码在不用转换格式的情况下直接由jupyter notebook上打开并且运行代码;

更加方便的由jupyter notebook看github下载的资料。

我们需要在jupyter notebook中加入能够阅读.md文件的功能。

安装流程:

anaconda的下载与安装;

如果在windows环境下需要配置一下anaconda的环境变量,即将anaconda安装目录的bin目录在环境变量中进行设置;

现在,你就可以使用anaconda的命令conda,使用命令conda create -n torch python=3.6;(其中的torch是你所设置的环境名称,以后你可以将自己工作所需要的python库在该环境下下载,它可以根据自己的需求修改;python=3.6 是对该环境下所需的python版本的配置,可以根据需求修改)

命令conda activate torch,激活刚才创建的环境,相当于进入到该环境下,如果要退出该环境,可以使用conda deactivate;(但是,我在windows环境下使用时,不需要加前面的conda,自己可以试一试)

进入刚才创建的环境后,jupyter notebook命令打不开相应的编辑器,因此我们需要安装它,安装命令conda install jupyter notebook;

安装成功后,使用命令jupyter notebook,就会弹出一个网页,并且将该目录的内容在在网页端编辑器中显示出来;(如图所示,是我打开的一个jupyter notebook编辑器,对于每一个文件,都能打开并且进行编辑)

但是,当我们打开一个md文件时,仅仅只会显示markdown格式的源码,无法显示渲染后的格式,因此,我们需要为jupyter notebook添加可以相应的功能,

pip install notedown,下载notedown;

修改jupyter notebook的配置文件C:\用户\jluaa\.jupyter\jupyter_notebook_config.py:添加c.NotebookApp.contents_manager_class = 'notedown.NotedownContentsManager';(前面无需加#)

之后,通过jupyter notebook编辑器就能实现打开md文件的功能。

注意

本人在配置好上述所示的jupyter_notebook_config.py文件后,在做其他项目时,另外创建了一个环境,下载好jupyter notebook后启动时,有如下报错:

[C 07:13:23.105 NotebookApp] Bad config encountered during initialization:
[C 07:13:23.105 NotebookApp] The 'contents_manager_class' trait of <notebook.notebookapp.NotebookApp object at 0x0000013EA754BB38> instance must be a type, but 'notedown.NotedownContentsManager' could not be imported

对于该错误,其中提到了contents_manager_class,所以可能和notedown在该环境下未下载有关,经过pip install notedown,成功解决!

补充知识:服务器 配置 Jupyter notebook 远程访问 (Ubuntu 14.04)

先决条件:

安装好Anaconda(python2或者python3版本都可以)

一般情况下Anaconda中自带Jupyter notebook.

可以在终端中使用

jupyter notebook

查看是否安装的有jupyter notebook.

如果系统提示没有这个软件的话.

在终端中使用

conda install jupyter

安装jupyter,(当然首先你得有anaconda,这个的安装这里不做过多的讲解.)

配置jupyter notebook远程

0.登录你的远程服务器

1.生成配置文件

jupyter notebook --generate-config

2.生成密码

使用ipython或者python都可以

$ipythonIn [1]: from notebook.auth import passwdIn [2]: passwd()Enter password:Verify password:Out[2]: 'sha1:cd723d3e4b0a:e5ca450bbedb63511c78989ea16b8d26941227fb'

注意这里需要把生成的密文复制下来,这里后面需要用到.

我这里是

‘sha1:cd723d3e4b0a:e5ca450bbedb63511c78989ea16b8d26941227fb'

这段.

3.修改配置文件

vim ~/.jupyter/jupyter_notebook_config.py

在打开的文件头部添加如下字段:

c.NotebookApp.ip='*' #意思是任意IP都可以访问
c.NotebookApp.password = u'sha1:cd723d3e4b0a:e5ca450bbedb63511c78989ea16b8d26941227fb' #刚才那个生成的密文
c.NotebookApp.open_browser = False #意思是默认不打开浏览器
c.NotebookApp.port =8888 #随便指定一个你想要的端口,后面可以从这个端口使用

4.启动jupyter

在你想要启动jupyter的目录使用如下命令

jupyter notebook

即可启动jupyter notebook

或者你可以使用如下命令 在后台启用jupyter notebook,并且推出当前ssh连接也不会中断程序.

nohup jupyter notebook &

5.远程访问

随便的电脑上打开浏览器访问IP:端口就可以远程访问服务器上的jupyter.

这个端口就是之前第三步里面你在配置文件中设置的端口.

比如说我这里是8888

假如我的服务器ip是127.0.0.1

那么我就可以访问

127.0.0.1:8888

6.其它

如果登陆失败,则有可能是服务器防火墙设置的问题,此时最简单的方法是在本地建立一个ssh通道:

在本地终端中输入ssh username@address_of_remote -L127.0.0.1:1234:127.0.0.1:8888

便可以在localhost:1234直接访问远程的jupyter了。

此外你也可以选择开放防火墙的指定端口(我这里开放了8888端口)

iptables -I INPUT -p tcp --dport 8888 -j ACCEPT
iptables save

以上这篇使用jupyter notebook直接打开.md格式的文件就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章