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.jupyterjupyter_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都可以
代码语言:javascript复制$ipython
In [1]: from notebook.auth import passwd
In [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格式的文件就是小编分享给大家的全部内容了,希望能给大家一个参考。