Firefox中的iPython Notebook - 警告:无响应的脚本

时间:2015-03-17 21:44:48

标签: python firefox ipython-notebook

我在Firefox的iPython笔记本上运行了很长时间的脚本。我回来了,似乎已经挂了,所以我把它保存起来并关闭了它。

当我重新打开脚本时,弹出一个对话框,出现以下错误:

  

警告:无响应的脚本

     

此页面上的脚本可能正忙,或者堆栈溢出可能有   停止响应。您可以立即停止脚本,打开脚本   调试器,或让脚本继续。

选项是'继续''停止脚本'和'调试脚本'。单击其中任何一个导致相同的结果,对话框消失,iPython笔记本无响应(例如,ctrl + enter在当前单元格中创建换行符而不是执行它。)

最糟糕的是,脚本底部的单元格似乎已被切断。它们包含一些看似已经消失的有价值的代码,这是一个非常糟糕的结果!

我试过回滚,但最后一个回滚点也显示了底部切断。这里的任何支持都非常感谢!

2 个答案:

答案 0 :(得分:7)

我现在已经解决了这个问题,希望它可以帮助其他人。

问题的原因似乎是其中一个单元的输出过长 - 这条线以下的所有内容都已在iPython浏览器中被切断,但我发现它仍然存在于.ipynb文件中,我只需要do是删除了一些输出行,当我重新打开文件时,它运行没有问题,我的代码已经被切断了。

笔记本电脑以JSON格式存储所有内容。在我的情况下,我需要删除其中一个单元格的输出,我这样做了:

  1. 浏览到您的iPython笔记本目录(不是ipython.exe所在的位置) - 对我来说,他们在C:\Users\myname\Documents\IPython Notebooks
  2. 右键点击有问题的notebook.ipynb文件,然后在文本编辑器中进行编辑 - 我的选择是Notepad ++
  3. 向下滚动到生成大量输出行的单元格。这些行中的每一行都在单元格的outputs属性中,并带有"output_type": "stream"
  4. 删除任意数量的这些输出条目,但请务必删除output属性本身以外的任何内容,并确保从尾部逗号后面删除以下逗号的前面,以便结果JSON格式正确
  5. 典型的输出行如下所示,删除数百个输出使我的脚本在浏览器中再次运行:

      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "Added 150000 records so far"
       ]
      },
    

答案 1 :(得分:0)

可能是Firefox的错。

让脚本运行更长时间

如果您发现按Continue按钮再次显示相同的对话框,让脚本运行更长时间不会对您有所帮助;它只会使Firefox挂起更长时间。但是,如果按“继续”后可以正常使用Firefox,则脚本可能只需要额外的时间即可完成。

告诉Firefox让脚本运行更长时间: 在位置栏中,键入about:config,然后按Enter键。 about:config"这可能会使您的保修失效!"可能会出现警告页面。点击I'll be careful, I promise!继续about:config页面。

about:config页面中,搜索首选项dom.max_script_run_time,然后双击它。     在“输入整数值”提示中,键入20。     按确定。

现在允许脚本运行更长时间,您可能不再收到提示。

这是https://support.mozilla.org/en-US/kb/warning-unresponsive-script

希望它可以提供帮助。