前言:
早就听闻ipython notebook 功能强大,一直没折腾,今天参考了网上其他人的帖子,搭建了ipython notebook,下面将流程记录如下。
1、安装Python
这个是必须的,现在python版本最新是python3.3.x。但是python2.7.x用的最多。建议安装python2.7,因为很多源码是基于python2写的。在http://www.python.org/download/下载。按照自己的平台下载对应的版本,然后安装即可。
2、设置环境变量
把C:\python2.7和C:\python2.7\Scripts都添加到环境变量中,
桌面-计算机-右键-选择属性-选择高级系统设置-选择环境变量-在系统变量里选择PATH-点击编辑-在变量值后面加上
;C:\python2.7;C:\python2.7\Scripts;
(注意后面是;而不是;),见下图:
3、下载安装Setuptools
下载ez_setup.py到某个目录(如:c:),下载地址:https://pypi.python.org/pypi/setuptools
安装:CMD下,进入c:\,运行:
python ez_setup.py
在这个过程中,系统会连接网络下载所需要的安装包并完成安装,这样就可以使用easy_install了。
PS:也可下载安装pip
下载get-pip.py到某个目录(如:c:),下载地址:http://www.pip-installer.org/en/latest/installing.html#install-or-upgrade-setuptools
安装:进入c:\,运行:
python get-pip.py
在这个过程中,系统会连接网络下载所需要的安装包并完成安装,这样就可以使用easy_install了。
做完前面四步,就可以在Windows下面开始使用python了。
1、下载安装IPthon:
windows,cmd下运行
C:>easy_install.exe Ipython
系统就会去网上寻找ipython包,进行下载及安装,并且还把pyreadline也安装了。python2.7.exe被安装在C:\python2.7\Scripts下面(默认),因为前面添加过环境变量的路径支持,所以可以直接在cmd下输入:
C:>ipython
2、尝试Notebook,还需要下载以下几个包
(1) 下载安装pyzmq,pip对pyzmq支持不太好,装不上。尝试使用easy_install
C:>easy_install.exe pyzmq
(2) 下载安装jinja2
C:>easy_install.exe jinja2
(3) 下载安装tornado
C:>easy_install.exe tornado
好了,使用下面命令就可以把Notebook连起来:
C:>ipython notebook
3、安装科学计算的画图工具matplotlib
因为下载的python没有自带numpy 和 matplotlib
(1) 下载安装nose
C:>easy_install.exe nose
(2) 由于easy_install.exe 与 pip都不能安装numpy,所以从这个链接http://www.lfd.uci.edu/~gohlke/pythonlibs/可以得到
numpy-MKL-1.8.2.win32-py2.7.exe
要注意,因为我们使用的是python2.7,所以一点也要选py2.7的numpy。直接安装,它会依照Windows注册表里面登记的pythonInstall来确定安装路径。
(3) 最后安装matplotlib,但由于easy_install.exe 与 pip都不能安装matplotlib,所以同上链接http://www.lfd.uci.edu/~gohlke/pythonlibs/可得
matplotlib-1.3.1.win32-py2.7.exe
(4) 同上链接可得
scipy‑0.14.0.win32‑py2.7.exe
好了,这就大功告成了。
(5) 远程访问notebook
如果需要远程访问,就稍微麻烦一点:
首先,需要建立一个server的config,通过在命令行键入:
C:>ipython profile create nbserver
然后,修改新建的profile,即ipython_notebook_config.py(命令行会有输出,告诉你生成的文件在哪里),默认的config文件都是被注释掉的,你需要至少修改如下的项:
c = get_config()
# Kernel config
c.IPKernelApp.pylab = 'inline' # if you want plotting support always
# Notebook config
c.NotebookApp.certfile = u'mycert.pem在自己电脑里的路径' #mycert.pem产生方法在后面
c.NotebookApp.ip = '*'
c.NotebookApp.open_browser = True
c.NotebookApp.password = u'自己的hashed password'#产生方法在后面
# It's a good idea to put it on a known, fixed port
c.NotebookApp.port =1234 #我用的是1234,可以自己设置
但是,你需要注意的是,我们还没有mycert.pem,这个也很简单,使用openssl生成一个就行,如果你手头有linux机器的话就极其简单了,shell下输入以下命令,安装提示输入国家,省,城市,等信息就会生成mycert.pem,然后拷贝到自己电脑里:
$ openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout mycert.pem -out mycert.pem
再接着,需要生成一串哈希后的密钥,随便开一个IPython的shell键入:
In [1]: from IPython.lib import passwd
In [2]: passwd()
设定你的密码即可(现在0.13版还不支持多人的notebook,因此只能单用户使用,只支持一个密码罢了,多用户功能处在开发中)。
好了,现在启动你的public的IPython notebook吧:
ipython notebook --profile=nbserver
然后你就可以在浏览器里远程访问你的IPython notebook了,cmd输入如下命令:
C:>ipython notebook
ipython notebook截图如下:
ipython notebook使用的时候截图,更多的教程在后续的博客会更新,
总结
- ipython notebook功能很强大,参考博客,还有很多功能要自己去挖掘。
- 有时候强大的工具能让学习和工作事半功倍。