Chromium 中的 jupyter notebook 访问问题

Chromium 中的 jupyter notebook 访问问题

我遇到了一个常见错误,但chmod我找到的解决方案似乎不起作用。

当我在 Ubuntu 19.10 上通过终端运行创建 Jupyter 笔记本时,jupyter notebook出现了这个错误,我相信很多人都熟悉:

The file at file:///home/vurnhat/.local/share/jupyter/runtime/nbserver-25715-open.html is not readable. It may have been removed, moved, or file permissions may be preventing access.

我已手动将链接粘贴到 Firefox 中,并且可以使用。我能否通过更改 Chromium 浏览器中的某些设置来使其在浏览器中正常工作?

答案1

我遇到了同样的问题。我不知道 Chrome 的问题是什么,但对我来说,一个快速“修复”方法是运行:

jupyter notebook --browser firefox

所以我不必在 Firefox 中复制粘贴链接。

答案2

使用命令在终端中生成 jupyter 配置文件:

jupyter notebook --generate-config

打开脚本jupyter_notebook_配置.py在目录中
/.jupyter 并取消注释第 531 行:设置c.NotebookApp.use_redirect_file = True
c.NotebookApp.use_redirect_file = False。它将起作用。

答案3

问题在于 Chromium 是 Ubuntu 中的一个 snap 应用程序,如果使用 URL 而不是 html 文件,则问题已解决。 jupyter notebook --generate-config 将输出配置文件的目录,编辑它并添加此行 c.NotebookApp.use_redirect_file = False

答案4

您的问题可能与 Chromium 是一款 snap 应用有关。根据这个 Stack Overflow 上的答案

在最新版本的 snap 中,使用 snap 安装的应用程序默认无法打开隐藏文件夹(名称以 开头.)中的文件。

在 Ubuntu 20.04 中,chromium 是用 snap 安装的(即使使用命令sudo apt install chromium-browser),因此 chromium 无法打开 Jupyter 使用的 html 文件。

正如@rahul-sood所说,一个简单的解决方法是在终端中复制粘贴 Jupyter 提供的替代链接之一(以 http://localhost:8889/?token=或开头http://127.0.0.1:8889/?token=)。

此 snap 问题也在这个 Ask Ubuntu 答案

Snap‘主页’ 界面 仅允许访问非隐藏用户 /home 中的文件和目录。

Snap‘个人文件’界面 允许访问全部用户 /home 中的文件和目录。

  • 折断接口在 snap 创建中使用的 yaml 文件中定义。
  • personal-files接口需要额外的$snap connect foo:foo-connect。 该home接口不需要,这使得它在某些用途上更加方便。

另请参阅 snapcraft 论坛中的相关主题:浏览器可以打开本地文件吗?


总而言之,这可能是由于 Chromium 是一个 snap 应用程序而导致的问题。您的选择是:

  • http://localhost:8889/?token=复制并粘贴 Chromium 中以或开头的链接之一,http://127.0.0.1:8889/?token=以在其中打开你的笔记本。

  • 默认使用另一个非 snap 浏览器。

  • 使用Salvatore Lampitelli 提到的命令在指定的非捕捉浏览器中打开笔记本。

相关内容