【问题标题】:Jupyter Notebook authentication token while in PycharmPycharm 中的 Jupyter Notebook 身份验证令牌
【发布时间】:2017-06-03 19:53:04
【问题描述】:

我正在尝试在 Pycharm 中使用 Jupyter notebook,但我意识到在新的 Jupyter 更新中,添加了令牌。

我正在关注JetBrains 的以下教程。

通过创建虚拟环境启动所有设置并将 URL 设置为 127.0.0.1:8888,但是,当我单击运行单元格按钮时,我会收到来自 Jupyter Notebook 的以下消息询问:

请输入您的 Jupyter Notebook URL 和身份验证令牌

像这样:

我在 Jupyter 更新博客上查找了它,它说应该启动我的 Web 浏览器,这会生成一个访问令牌,但我没有看到我的浏览器在这里加载。

这里将不胜感激。

【问题讨论】:

  • 至少从 PyCharm 版本 2019.1(可能是 2018 年发布的最新版本)开始,已从 PyCharm 的社区版中删除了对 Jupyter 笔记本的支持。现在仅专业版支持 Jupyter 笔记本。

标签: python pycharm jupyter


【解决方案1】:

运行jupyter notebook list 将显示您机器上所有正在运行的服务器。因此,在 PyCharm 中启动一个单元格后在终端中执行此操作将导致输出类似于 Currently running servers: http://127.0.0.1:8888/?token=f85145dda03dc598bbbfa6e53b93cbcb27629ea00cfd2105 :: /home/.... 其中包含用于身份验证的适当令牌。

【讨论】:

  • 本例中的令牌是f85145dda03dc598bbbfa6e53b93cbcb27629ea00cfd2105(即http://127.0.0.1:8888/?token=后面的字符串)
  • 运行单元并没有为我启动 jupyter notebook 服务器。 jupyter notebook list 什么也没返回。 This other answer 确实对我有用,所以如果这个对你不起作用,读者也值得一试。
  • 如果它不起作用,PyCharm 会陷入循环,必须被 kill -9'd。取消不起作用。
  • 我只得到这个:jupyter notebook 列表:当前运行的服务器:localhost:8888 :: C:\Users\Hemmat
  • 这个答案对我不起作用,因此我使用了this one,它非常有效。
【解决方案2】:
  1. 编辑/输入网址为:http://localhost:8888(删除末尾的"?token=")并点击OK
  2. PyCharm 窗口顶部附近将出现气泡提示,提示“无法连接到 Jupyter Notebook。运行 Jupyter Notebook”。它应该看起来像这样(取决于你的配色方案):

  1. 点击链接:“运行 Jupyter Notebook”
  2. PyCharm 将为您启动 Jupyter 服务器并创建一个新令牌。查看视图 -> 工具窗口 -> 运行,以查看新令牌的详细信息,以及在网络浏览器中打开的可选 URL。

更多信息:https://www.jetbrains.com/help/pycharm/using-ipython-jupyter-notebook-with-pycharm.html

【讨论】:

  • 今天在 pycharm 的最新更新中不起作用
  • 我点击了“运行 Jupyter Notebook”链接,看到返回:[TerminalIPythonApp] WARNING |子命令 ipython notebook 已弃用,将在未来版本中删除。 [TerminalIPythonApp] 警告 |您可能希望在将来使用jupyter notebook [W 08:17:43.929 NotebookApp] 拒绝监听端口 8888 [C 08:17:43.929 NotebookApp] 错误:无法启动笔记本服务器,因为没有可用端口可以找到。
  • @JasonArg123 如果您尝试以下说明,将额外路径添加到您的运行配置,它是否有效? ...intellij-support.jetbrains.com/hc/en-us/community/posts/…
  • @KhalilAlHooti:通过“调试 XD”查看答案,尤其是 PyCharm 终端方式。
【解决方案3】:

对于像我这样不知道终端在哪里的人->另一种我觉得更容易的方法是:

1) 在浏览器中打开新的 Jupyter 笔记本。查看 URL,在那里您可以看到您的 localhost(例如:localhost:8889),并在必要时更改 PyCharm 中的默认值。

2) 对于令牌,在浏览器中按 F12,然后按 Ctrl + F 并搜索“令牌”。它会在 html 代码中的某处,一长串随机数字和字母。

【讨论】:

    【解决方案4】:

    我找到的最短路径:
    如果您在 PowerShell 终端中键入 jupyter notebook,PowerShell 将自动打印出 PyCharm 需要运行的 localhost、端口和令牌。

    您可以从 PyCharm 终端运行命令,如果您有多个,它将​​转到同一个解释器。

    【讨论】:

    • 从 PyCharm 终端运行命令是两种最短方式中较短的一种。 ;)
    【解决方案5】:
    1. 运行 Anaconda 导航器
    2. 创建或打开新笔记本
    3. 按 F12 或检查元素
    4. 在其 html 代码中搜索“token”
    5. 你可以找到类似的东西 这个:'data-jupyter-api-token="02eaf15f7fb715725c85602867d0b2585962e0ee...."'

    【讨论】:

      【解决方案6】:

      我不得不为我的 Jupyter Notebook 重新安装 Anaconda 和一些旧的配置文件。检查可能存在的 jupyter 配置文件,在某些情况下可能包含密码或令牌:

      • 打开终端

      • 检查jupyter配置目录:

        jupyter --config-dir

        (示例输出)>>> C:\Users\Username.jupyter

      打开文件并检查文件中是否指定了“NotebookApp”:

      {
        "NotebookApp": {
          "password": "sha1:1af4568a9g:64gsded68g4dsh434df634fhd684"
        }
      }
      

      【讨论】:

        猜你喜欢
        • 2017-12-14
        • 2020-07-22
        • 2017-11-24
        • 2018-11-26
        • 1970-01-01
        • 1970-01-01
        • 2017-06-13
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多