我在没有管理员权限的 Windows 机器上,我想在 chrome 上运行 jupyter,而默认浏览器是另一个。
我在本地安装了 Anaconda 发行版,启动 jupyter 的第一个选择是通过 Anaconda Navigator,但也许我必须做其他事情。因为它是本地安装,所以命令行 jupyter notebook
不会产生任何结果。
当我将 url 地址粘贴到我拥有的默认浏览器中时(类似于 http://localhost:8892/notebooks/Home/Exercices/Testing1.ipynb
,chrome 页面要求我输入密码或令牌。我没有密码,也不知道令牌是什么。
有没有办法改变 Anaconda Navigator 的浏览器?或者如何使用 Chrome 启动 jupyter?
感谢@Darthbith 和这篇文章How to change the default browser used by the ipython/jupyter notebook in Linux?,我能够弄清楚:
第 1 步:从“开始”菜单打开 Anaconda Prompt 并键入
# for old notebook and JupyterLab < 3.0, or
jupyter notebook --generate-config
# for new nbclassic and JupyterLab >= 3.0
jupyter server --generate-config
这将生成文件 ~/.jupyter/jupyter_notebook_config.py
(或用于 nbclassic/new JupyterLab 的 jupyter_server_config.py
)
第 2 步:编辑此文件并更改以下行(chrome 也在本地安装中)
# for old notebook and JupyterLab < 3.0
c.NotebookApp.browser = u'C:/Home/AppData/Local/Google/Chrome/Application/chrome.exe %s'
# OR for new nbclassic and JupyterLab >= 3.0
c.ServerApp.browser = u'C:/Home/AppData/Local/Google/Chrome/Application/chrome.exe %s'
在 Windows 中,在 cmd/Anaconda Prompt 中写入:
jupyter notebook --generate-config
生成的 jupyter_notebook_config.py 文件位于“C:\Users\YourName\.jupyter\”文件夹中。
使用文本编辑器打开它并将 #c.NotebookApp.browser = ''
更改为
import webbrowser
webbrowser.register('chrome', None, webbrowser.GenericBrowser(u'C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe'))
c.NotebookApp.browser = 'chrome'
并保存文件。
现在执行 jupyter-notebook 命令,将使用设置的浏览器。
import webbrowser
webbrowser.register('edge', None, webbrowser.GenericBrowser(u'C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.exe'))
c.NotebookApp.browser = 'edge'
我不知道 Windows 的确切细节,但这是在 Mac 上设置默认浏览器的方法:
jupyter notebook --generate-config
这会在 ~/.jupyter 中创建一个文件 jupyter_notebook_config.py。编辑行
#c.NotebookApp.browser = ''
在 Mac 上,我将其设置为:
c.NotebookApp.browser = u'open -a /Applications/Gooogle\ Chrome.app %s'
您只需要弄清楚如何将其指向 Windows 上的 Chrome。
jupyter notebook --generate-config
命令应从 Windows 上的 Anaconda Prompt 运行
以下也适用于我。我给它一个完整的 chrome 路径,最后加上 %s
。
jupyter notebook --browser='C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s'
如果 chrome 在 PATH 环境变量中,则以下内容也可能有效。
jupyter notebook --browser=chrome
据我所知,无法更改打开的默认浏览器。但是,您可以通过从“开始”菜单打开 Anaconda Prompt 并键入来找到 Notebook 服务器的令牌
jupyter notebook list
这将为您提供一个带有令牌的 URL,您可以将其复制/粘贴到任何其他浏览器中。 list
命令的输出如下所示
Currently running servers:
http://localhost:8888/?token=41429d3dcf554d0dde69498aac0950654a590664ba02b3cd :: /path/to/home/folder
因此,您可以在浏览器中键入 http://localhost:8888
,然后将令牌复制/粘贴到字段中,或者只需复制/粘贴整个 URL 和令牌。
您无需更改 jupyter_notebook_config 文件中的任何内容。检查您的默认网络浏览器(如果是 chrome)或重置,然后再次选择作为网络浏览器(对我来说是 chrome)作为默认浏览器。它对我有用。
我想提供更多关于在 jupyter_notebook_config.py 文件中放入内容的信息,而不是其他任何答案中包含的信息。 jupyter 正在使用 python 的 webrowser 模块通过将 c.NotebookApp.browser 的值传递给 webbrowser.get(using=None) 函数来启动浏览器。如果未指定任何值,该函数将选择用户的默认浏览器。如果您在此处指定了一个值,则可以通过以下两种方式之一对其进行解释,具体取决于您指定的值是否以字符 %s
结尾。
如果字符串不包含字符 %s
,则将其解释为浏览器名称,并且模块会检查它是否具有使用该名称注册的浏览器(请参阅默认注册浏览器的 python 文档)。这就是为什么 Abhirup Das 的答案有效,首先导入 webbrowser 模块
import webbrowser
chrome浏览器已注册到模块
webbrowser.register('chrome', None, webbrowser.GenericBrowser(u'C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe'))
最后,向 jupyter 服务器提供浏览器名称
c.NotebookApp.browser = 'chrome'
此浏览器注册不会持续存在,因此每次启动服务器时都必须重复该过程。
或者,如果字符串确实包含字符 %s
,则将其解释为文字浏览器命令。由于这个问题是关于如何在 Windows 上运行浏览器 ,因此浏览器命令可能会包含反斜杠。反斜杠在 python 字符串文字中用于转义任何具有特殊含义的字符(例如,在字符串文字中包含引号或双引号)。浏览器命令中的任何反斜杠都需要转义或替换。最简单的方法是用正斜杠替换命令中的反斜杠,例如,
'C:/Home/AppData/Local/Google/Chrome/Application/chrome.exe %s'
而不是
'C:\Home\AppData\Local\Google\Chrome\Application\chrome.exe %s'
我一生都无法获得 unicode/raw 字符串命令或我用额外的反斜杠转义每个反斜杠的命令,因此用正斜杠替换反斜杠可能是唯一的选择。我验证了我尝试的字符串都在 python 中工作,所以唯一可以确定的方法是查看 jupyter 源代码。
无论如何,由于使用模块注册浏览器不会持续存在,如果您的浏览器默认情况下尚未注册,最好使用文字浏览器命令,将反斜杠替换为正斜杠。
在 Mac 上这有效:
1)从您的环境中生成一个配置文件:
jupyter notebook --generate-config
这会将 jupyter_notebook_config.py
放在 ~/.jupyter
中。
2) 修改 jupyter_notebook_config.py
中的以下行:
c.NotebookApp.browser = 'open -a /Applications/Google\ Chrome.app %s'
对于 Linux 用户:
首先使用 jupyter notebook --generate-config
生成配置文件
然后打开生成的文件并查找 #c.NotebookApp.browser = ''
将其编辑为:c.NotebookApp.browser = '/bin/brave %s'
将 /bin/brave 替换为您的浏览器可执行文件位置。
上面的解释对我不起作用,我想,我打错了一些东西。实际上,我更容易将默认浏览器更改为 Chrome,然后 Jupiter 在下次启动后自动在 Chrome 中启动。 (搜索 Windows - 更改默认浏览器)。
Jupyter 在选择要启动的浏览器时会查找 BROWSER
环境变量。
我建议设置 BROWSER
而不是专门配置 Jupyter,因为设置 BROWSER
是指定您喜欢的浏览器的默认方式,无论它适用于哪个应用程序。
要为单个会话选择浏览器,请在运行 jupyter 进程时设置 BROWSER 环境变量。 BROWSER=chromium-browser jupyter notebook 当你有 chromium-browser 当你喜欢在 PATH 上使用 chromium-browser 时。典型的 Linux。 BROWSER=C:/Home/AppData/Local/Google/Chrome/Application/chrome.exe jupyter notebook 当您在 PATH 上没有应用程序时。典型的 Windows。 BROWSER=<您的浏览器> jupyter notebook 否则。
要为整个系统选择浏览器,请全局设置 BROWSER 环境变量。
找到 .../jupyter/runtime/nbserver-11596-open.html 文件,或者无论文件名是什么,您都可以在 jupyter notebook 启动时找到文件名,并将其与为我工作的 Chorme 相关联。
打开 anaconda 提示符并输入
jupyter notebook --generate-config
然后转到“jupyter_notebook_config.py”路径并添加以下行
c.NotebookApp.browser = 'C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s'
有什么方法可以在 /tmp 的 chrome 上运行 jupyter 吗?
类似的东西:
jupyter notebook --browser='google-chrome --user-data-dir=/tmp/'
jupyter-lab --browser='firefox'
最适合我。
确保通过删除 # 注释指示符来激活该行。
当 Chrome 不是我的默认浏览器时,在尝试从 Win10 中的 Anaconda 启动 chrome 中的 jupyter notebook 后,我结合了上面的几个建议,并在我的主目录中的 .jupyter 下的 jupyter_notebook_config.py 文件中放入了这些行代替默认的 c.NotebookApp.browser 行,它终于起作用了!:
import webbrowser
webbrowser.register('chrome', None, webbrowser.GenericBrowser(u'C:/PROGRA~2/Google/Chrome/Application/chrome.exe'))
c.NotebookApp.browser = 'chrome'
注意使用 Unix 风格的目录分隔符(这显然是 webbrowser 中的一个错误)和使用 DOS 风格的“PROGRA~2”——这两者似乎都是必要的。在“chrome.exe”之后添加“%s”似乎没有帮助。
为了在 Windows 10 上实现这一点,我必须执行以下操作:
对于从 Anaconda Prompt CLI 临时选择/指定浏览器(请注意引号的顺序/类型,它们似乎与大多数其他答案不同,因为这些答案对我不起作用):
jupyter notebook --browser="'C:\Program Files (x86)\BraveSoftware\Brave-Browser\Application\brave.exe' %s"
要永久设置它,请编辑 .jupyter 文件夹中的 jupyter_notebook_config.py 文件。我不确定您是否需要转义反斜杠(即 \ vs just ),但我使用了以下内容并且它有效(再次注意,引号的顺序/类型不同):
c.NotebookApp.browser = '"C:\\Program Files (x86)\\BraveSoftware\\Brave-Browser\\Application\\brave.exe" %s'
有一种比在命令窗口中输入命令更简单的方法,您可以使用 Windows 文件资源管理器!只需导航到以下路径 C:\Users\**YourUser**\AppData\Roaming\jupyter\runtime\
,如下所示:
https://i.stack.imgur.com/iK88h.png
除了其他文件之外,您还可以在其中看到 jupyter 作业的相应 .html
文件。您可以右键单击任何 .html
文件,选择“打开为”,然后选择其他应用程序(如下图所示 - 抱歉,我的默认语言是西班牙语)。
https://i.stack.imgur.com/zXvtJ.png
从这里,您可以选择最适合您的导航器。就我而言,我使用的是 Firefox,但您可以选择 Chrome 或其他任何东西(如下所示)。确保单击“始终使用此应用程序打开 .html 文件”复选框以将 Chrome 设置为默认导航器。
https://i.stack.imgur.com/8WPLr.png
从现在开始,Jupyter Notebooks 将始终在 Chrome 中打开。希望它有所帮助!
就我而言,macOS 10.15.4 和 anaconda 1.9.12,最后,我找到了一个有效的,如下所示:
c.NotebookApp.browser = u'/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome %s'
我希望这可以帮助别人。 :-)
Jupyterlab 3 migrated from notebook server to plain jupyter server。要选择将打开的浏览器 jupyter lab
,请将配置放入 .jupyter/jupyter_server_config.py
并将 NotebookApp
替换为 ServerApp
。例如:
c.ServerApp.browser = '/usr/bin/firefox -P notebook --new-window %s'
如果您没有为 jupyter notebook 指定浏览器,也许只需更改操作系统的默认浏览器即可解决您的问题;就像它对我一样。检查窗口中的默认浏览器:默认应用程序:网络浏览器
检查默认浏览器的配置,默认浏览器是 Jupyter Notebook 将在其中打开的位置。
在 Windows 上,只需更改它:
在开始菜单中搜索“默认应用程序”,打开它。在 Web 浏览器下,选择当前列出的浏览器,然后只需将其更改为所需的浏览器(您希望 Jupyter Notebook 在其中打开)。
这是步骤
打开 Anaconda promt 并写入: jupyter notebook --generate-config 转到该路径并使用文本编辑器打开 .py 文件 在该文件中查找包含以下文本的行:#c.NotebookApp.browser = '' Befor该行编写以下代码 import webbrowser webbrowser.register('chrome', None, webbrowser.GenericBrowser(u'C:/PROGRA~2/Google/Chrome/Application/chrome.exe')) 在行中删除符号#设置浏览器,如下所示: c.NotebookApp.browser = '' 保存文件,这使得 Chrome 作为默认浏览器启动 jupyter notebook
使用这个命令(windows cmd):
jupyter notebook --browser NotebookApp.browser
它会生成一个链接(本地主机链接),将其复制粘贴到您需要的任何浏览器中并使用您的笔记本。
Microsoft 已将 Edge 设置为 Windows 上的持久性病毒。即使您在“设置”中将默认浏览器设置为 Chrome,打开 Jupyter 时仍然会获得优势。这是因为 Microsoft 已将 Edge 设置为 .htm 和 .html 文件的默认应用程序。在应用程序默认值的设置中,找到那个并将其更改为 Chrome 即可。
简单步骤: 1. 卸载笔记本在启动时选择的当前浏览器。 2.再次启动笔记本,它会询问浏览器:选择所需的浏览器并启用以下条款:(类似)始终为此类文件选择此应用程序。
它会起作用的。重新安装您已卸载的浏览器。
不定期副业成功案例分享
%s
是什么?在 Linux 上,事情要简单得多jupyter_notebook_config.py
是一个 Python 文件,但变量c
从未被定义并且仍在使用。那怎么能行?c.NotebookApp.browser = '"C:\\Program Files\\Mozilla Firefox\\firefox.exe" %s'