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


Posted in Python onApril 10, 2020

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编辑器,对于每一个文件,都能打开并且进行编辑)

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

但是,当我们打开一个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都可以

$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格式的文件就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中xrange和range的区别
May 13 Python
python基础教程之Hello World!
Aug 29 Python
Python实现建立SSH连接的方法
Jun 03 Python
21行Python代码实现拼写检查器
Jan 25 Python
Python 查找字符在字符串中的位置实例
May 02 Python
Tensorflow卷积神经网络实例进阶
May 24 Python
Python函数定义及传参方式详解(4种)
Mar 18 Python
python射线法判断一个点在图形区域内外
Jun 28 Python
python threading和multiprocessing模块基本用法实例分析
Jul 25 Python
Python实现栈和队列的简单操作方法示例
Nov 29 Python
TensorFlow命名空间和TensorBoard图节点实例
Jan 23 Python
详解Python IO编程
Jul 24 Python
Selenium使用Chrome模拟手机浏览器方法解析
Apr 10 #Python
Selenium基于PIL实现拼接滚动截图
Apr 10 #Python
在jupyter notebook 添加 conda 环境的操作详解
Apr 10 #Python
Selenium向iframe富文本框输入内容过程图解
Apr 10 #Python
jupyter notebook 多环境conda kernel配置方式
Apr 10 #Python
OpenCV 表盘指针自动读数的示例代码
Apr 10 #Python
Python装饰器的应用场景代码总结
Apr 10 #Python
You might like
简单的PHP缓存设计实现代码
2011/09/30 PHP
PHP 设计模式之观察者模式介绍
2012/02/22 PHP
解析Win7 XAMPP apache无法启动的问题
2013/06/26 PHP
PHP设计模式之迭代器模式
2016/06/17 PHP
浅谈PHP正则中的捕获组与非捕获组
2016/07/18 PHP
PHP实现一个限制实例化次数的类示例
2019/09/16 PHP
关于B/S判断浏览器断开的问题讨论
2008/10/29 Javascript
qTip 基于JQuery的Tooltip插件[兼容性好]
2010/09/01 Javascript
js将控件隐藏的方法及display属性介绍
2013/07/04 Javascript
js 动态为textbox添加下拉框数据源的方法
2014/04/24 Javascript
JS学习之表格的排序简单实例
2016/05/16 Javascript
Angular2生命周期钩子函数的详细介绍
2017/07/10 Javascript
微信小程序实现下载进度条的方法
2017/12/08 Javascript
Node.js npm命令运行node.js脚本的方法
2018/10/10 Javascript
node上的redis调用优化示例详解
2018/10/30 Javascript
layui checkbox默认选中,获取选中值,清空所有选中项的例子
2019/09/02 Javascript
Layer组件多个iframe弹出层打开与关闭及参数传递的方法
2019/09/25 Javascript
vue开发中遇到的问题总结
2020/04/07 Javascript
Vue基于localStorage存储信息代码实例
2020/11/16 Javascript
python线程、进程和协程详解
2016/07/19 Python
Python Paramiko模块的使用实际案例
2018/02/01 Python
python用Configobj模块读取配置文件
2020/09/26 Python
HTML5 Canvas——用路径描画线条实例介绍
2013/06/09 HTML / CSS
6号汽车旅馆预订:Motel 6
2018/02/11 全球购物
介绍一下MD5加密算法
2016/11/12 面试题
办公室主任岗位职责
2013/11/08 职场文书
三八节主持词
2014/03/17 职场文书
建材投资建议书
2014/05/16 职场文书
动物科学专业求职信
2014/07/27 职场文书
母亲节寄语大全
2015/02/27 职场文书
2015年乡镇扶贫工作总结
2015/04/08 职场文书
教师素质教育心得体会
2016/01/19 职场文书
MySQL慢查询的坑
2021/04/28 MySQL
开发微信小程序之WXSS样式教程
2022/04/18 HTML / CSS
react中useState使用:如何实现在当前表格直接更改数据
2022/08/05 Javascript
ubuntu20.04虚拟机无法上网的问题及解决
2022/12/24 Servers