使用所选浏览器启动IPython笔记本电脑

使用所选浏览器启动IPython笔记本电脑,python,windows,subprocess,ipython,Python,Windows,Subprocess,Ipython,我正在尝试使用非默认浏览器(在我的例子中是Firefox)启动IPython 我想我可以复制剧本 我在Windows 7上 我将以下代码放在一个文件中,比如“module.py” 但是,当我从命令行运行它时 python C:\Users\mugabal\Desktop\module1.py 它执行第一行,但不执行第二行(两行分别工作正常) 我的问题(用更一般的术语)我如何启动一个进程并告诉它不要高举控制台窗口 如果我看到了一个明显的解释,我提前表示歉意,但我查看了子流程文档和这个平台 --

我正在尝试使用非默认浏览器(在我的例子中是Firefox)启动IPython 我想我可以复制剧本

我在Windows 7上

我将以下代码放在一个文件中,比如“module.py”

但是,当我从命令行运行它时

 python C:\Users\mugabal\Desktop\module1.py
它执行第一行,但不执行第二行(两行分别工作正常)

我的问题(用更一般的术语)我如何启动一个进程并告诉它不要高举控制台窗口

如果我看到了一个明显的解释,我提前表示歉意,但我查看了子流程文档和这个平台

----更新---

我应该补充一点,我试图用选定的浏览器启动IPython,但无法找到如何使其工作

>ipython notebook --browser='C:\Program Files (x86)\Mozilla Firefox\Firefox.exe'
... 
[NotebookApp] The IPython Notebook is running at: http://127.0.0.1:8888/
...
**[NotebookApp] No web browser found: could not locate runnable browser.**
准确地说,Windows命令提示符窗口中的以下命令按预期工作:

start firefox 
但是

不起作用(与上述错误相同)。

为什么不使用

--browser=<Unicode> (NotebookApp.browser)
    Specify what command to use to invoke a web browser when opening the
    notebook. If not specified, the default browser will be determined by the
   `webbrowser` standard library module, which allows setting of the BROWSER
--browser=(NotebookApp.browser)
指定在打开浏览器时用于调用web浏览器的命令
笔记本。如果未指定,默认浏览器将由
`webbrowser`标准库模块,允许设置浏览器

我在windows上也遇到了同样的问题,并通过以下方式解决:

  • 使用命令创建配置文件
    ipython配置文件创建默认值

  • 编辑ipython_notebook_config.py文件,搜索行

#c.NotebookApp.browser=''

并将其替换为

import webbrowser
webbrowser.register('firefox', None, webbrowser.GenericBrowser('C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe'))
c.NotebookApp.browser = 'firefox'
那对我来说就行了

希望它能帮助你


JPG

我取消对此行的注释并将其更改为False,这不是为了让ipython notebook在开始时打开web浏览器,因此我们可以在活动web浏览器中指向ipython notebook地址

# Whether to open in a browser after starting. The specific browser used is
# platform dependent and determined by the python standard library `webbrowser`
# module, unless it is overridden using the --browser (NotebookApp.browser)
# configuration option.
c.NotebookApp.open_browser = False

更好的是,每次打开浏览器时,我都会在Firefox中锁定地址,使其处于活动状态。

我尝试了JPG和norfeldt的建议。它在我的Windows7电脑上运行得非常好。这是ipython_notebook_config.py(位于C:\Users\'your username'\.ipython下)的修改部分的副本,用于使用Safari作为笔记本的默认浏览器。正如norfeldt所说,请注意“C:\…”之前的u)


我将环境变量BROWSER设置为浏览器的可执行文件(在我的例子中是googlechrome),Ipython笔记本在我喜欢的浏览器中启动

PS H:\> $env:BROWSER = "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
PS H:\> $env:BROWSER
C:\Program Files (x86)\Google\Chrome\Application\chrome.exe
PS H:\>
PS H:\> ipython notebook
2015-02-19 14:05:01.690 [NotebookApp] Using existing profile dir: C:\\Users\\abc\\.ipython\\profile_default'
2015-02-19 14:05:01.832 [NotebookApp] Using MathJax from CDN: http://cdn.mathjax.org/mathjax/latest/MathJax.js
2015-02-19 14:05:01.901 [NotebookApp] The port 8888 is already in use, trying another random port.
2015-02-19 14:05:01.908 [NotebookApp] Serving notebooks from local directory: H:\
2015-02-19 14:05:01.908 [NotebookApp] 0 active kernels
2015-02-19 14:05:01.910 [NotebookApp] The IPython Notebook is running at: http://localhost:8889/
2015-02-19 14:05:01.910 [NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).

无需编码,您只需将默认浏览器设置为Chrome或Firefox等。它适用于我的windows系统。

在我的mac电脑上,我获得了以下命令来使用Firefox而不是默认的Chrome:

jupyter notebook --browser firefox

这不是一个真正的答案。我只想和不太懂电脑的人一步一步地分享JPG的答案。据推测,在Windows资源管理器(屏幕截图附在下面)上,列出了文件
jupyter\u notebook\u config.py

在我的例子中,文件的目录(在浏览器顶部菜单上)是
C:\Users\my_name\.jupyter

答案的第二部分可以通过简单粘贴来实现:

import webbrowser
webbrowser.register('firefox', None, webbrowser.GenericBrowser('C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe'))
c.NotebookApp.browser = 'firefox'
在屏幕截图上显示的空间中,对应于PyCharm中打开的
jupyter\u notebook\u config.py

。。。只是我把它设置为在Opera中打开:

import webbrowser
webbrowser.register('opera', None, webbrowser.GenericBrowser('C:\\Program Files (x86)\\Opera\\launcher.exe'))
c.NotebookApp.browser = 'opera'

当您在命令提示符下执行以下代码时,它会给出一个结果链接,您可以在任何浏览器中复制该链接以打开Jupiter笔记本

jupyter notebook --browser firefox

谢谢你,马特。我无法让它工作(请参阅更新)。这个命令应该是什么样子的呢?IIRC,看看代码,你应该使用与webbrowser-get相同的语法:那么只需在windows上使用ipython notebook--browser='firefox',我猜你有没有尝试过转义反斜杠和空格?我们只是将选项转发给webbrowser.get,因此如果您实现了使其工作,您将从中了解需要使用的命令:我想说的是,您确实需要避开反斜杠,但不需要空格。谢谢。逃跑也不管用。事实上,问题可能是当我运行import webbrowser、print webbrowser时电脑的配置。在浏览器中,它只显示explorerI必须添加use u'C:\\Program Files(x86)\\Mozilla Firefox\\Firefox.exe才能工作是的!它适用于jupyter笔记本电脑。仅设置“c.NotebookApp.browser='/usr/bin/googlechrome'”对chrome不起作用,但对firefox很有效,这是一个非常奇怪的bug。你的解决方案解决了这个问题!谢谢对于那些使用macOS的人,请注意:这是可行的,但路径当然是不同的。您可以链接到应用程序文件夹:
/applications/Opera.app/Contents/MacOs/Opera
。对于Jupyter notebook,使用命令创建配置
Jupyter notebook--generate config
,并编辑Jupyter\u notebook\u config.py文件,如上所述
ipython notebook--browser=firefox
,谢谢!如果您只想在windows任务栏中添加一个单独的图标,请以来宾身份登录Chrome并启动jupyter Notebook谢谢!Windows注意:如果在
path
环境变量中设置了firefox的路径,则此选项有效。
import webbrowser
webbrowser.register('firefox', None, webbrowser.GenericBrowser('C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe'))
c.NotebookApp.browser = 'firefox'
import webbrowser
webbrowser.register('opera', None, webbrowser.GenericBrowser('C:\\Program Files (x86)\\Opera\\launcher.exe'))
c.NotebookApp.browser = 'opera'
jupyter notebook --browser firefox