使用.bat文件启动Jupyter Lab如何指定打开Edge浏览器
解决方案
方案1:修正bat脚本(临时解决)
报错本质是bat解析带空格的路径参数时,双引号嵌套/转义异常导致jupyter接收到的浏览器路径被截断,可以用两种方式修复:
- 方式A:使用无空格的短路径替换完整路径
- 打开cmd进入Edge安装目录
cd "C:\Program Files (x86)\Microsoft\Edge\Application" - 执行
dir /x查看短文件名,例如Program Files (x86)对应的短名一般是PROGRA~2,Microsoft Edge对应的短名一般是MICROS~1 - 修改bat脚本内容为:
call C:\Users\[USERNAME]\Anaconda3\Scripts\activate.bat C:\Users\[USERNAME]\Anaconda3 jupyter lab --browser=C:/PROGRA~2/MICROS~1/Application/msedge.exe %%s - 打开cmd进入Edge安装目录
- 方式B:调整参数引号写法
三层双引号可以避免cmd提前解析参数里的引号,保证完整路径传递给jupyter。call C:\Users\[USERNAME]\Anaconda3\Scripts\activate.bat C:\Users\[USERNAME]\Anaconda3 jupyter lab --browser="""C:/Program Files (x86)/Microsoft/Edge/Application/msedge.exe %%s"""
方案2:修改Jupyter配置(永久解决,更稳定)
直接在Jupyter配置里指定默认浏览器,完全避开bat参数转义问题:
- 先激活conda环境,执行命令生成配置文件:
jupyter lab --generate-config
执行后会输出配置文件的存储路径,默认是C:\Users\[你的用户名]\.jupyter\jupyter_lab_config.py - 打开配置文件,搜索并修改以下配置(去掉行首的#注释,修改内容如下):
import webbrowser # 注册Edge浏览器 webbrowser.register('edge', None, webbrowser.GenericBrowser(r'C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe')) # 指定默认启动浏览器 c.ServerApp.browser = 'edge' # 旧版本Jupyter请把ServerApp替换为NotebookApp
- 简化bat脚本内容为:
call C:\Users\[USERNAME]\Anaconda3\Scripts\activate.bat C:\Users\[USERNAME]\Anaconda3 jupyter lab
后续启动直接运行该bat即可自动调用Edge打开Jupyter Lab。
内容的提问来源于stack exchange,提问作者rwalroth
相关产品推荐
相关产品推荐

