问题标签 [papermill]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
201 浏览

airflow - Airflow Papermill 操作员:60 分钟后外部跳过的任务

我在 Docker 容器中使用 Airflow。我使用多个 Jupyter 笔记本运行 DAG。每次 60 分钟后我都会出现以下错误:

我试图调整配置文件,但找不到删除 1 小时超时的好选择。任何帮助,将不胜感激。

0 投票
0 回答
47 浏览

python - nbconvert 没有选择默认的 jupyter 主题

我在 docker 容器中运行 Jupyter。我在 Jupyter 中应用了不同的主题。我可以打开我的笔记本并查看新主题。我可以将它下载为 HTML 并且主题仍然存在。

准备好笔记本后,我使用 papermill 运行它的多个副本,然后运行以下代码片段,使用 nbconvert 将笔记本转换为 HTML。我的问题是它没有选择当前主题,而是选择了默认主题。

我查看了文档,它说默认模板应该类似于 Jupyter Interactive 视图,但导出的 HTML 看起来与 jupyter 不同。https://nbconvert.readthedocs.io/en/latest/usage.html#html

0 投票
0 回答
131 浏览

visual-studio-code - 向 Jupyter 笔记本添加标签

正如JupyterVisual Studio Code (VSC) 的 Miscrosoft 扩展的描述中所建议的,我来这里是为了询问您对 jupyter 笔记本中单元元数据的支持。目前似乎没有任何东西可用于添加单元元数据,因此,在使用papermillVSC 编写 python 笔记本时使用扩展。

2019 年 github 讨论中的最后一条消息,日期为 2021-05-28,指向另一个讨论,在 2021-05-13 有人建议使用Jupyter Powertools 扩展

但是,截至今天 2021-10-03,该扩展似乎与我的任何一个 VSC 版本都不兼容:

  • VSC 1.60.2
  • VSC 内部人员:1.61.0

其中任何一个都没有可用的更新(使用 Windows 10)。

有什么方法可以papermill与 VSC 一起使用吗?如果没有,您是否知道papermill在使用 VSC 时参数化笔记本的任何替代方法?

谢谢

0 投票
0 回答
28 浏览

python - Papermill/Cronjob 从 Jupyter Notebook 生成/附加 CSV 而不会覆盖 CSV

我是编码新手,有一些可以使用指导的概念性问题。

我正在网页抓取,它输出到一个 csv,如果在我运行笔记本时 csv 已经存在,它会附加行。我计划使用带有 papermill 的 cronjobs 来自动运行刮,但我担心我可能会丢失一些代码来确保我不会覆盖当前的 csv。我想我可能还需要实现if name == __main__,但我无法理解它的应用。

下面是我认为我可能需要编辑才能使用 papermill 并获得我想要的结果的代码。

  1. 如果我在 papermill 中运行它,它会知道我指的是哪个文件路径,还是使用 os.path 是最佳实践?

  2. 我是否需要将输出位置指定为生成/附加的 csv 的路径?

  3. 我需要为此使用if name == __main__吗?一般来说,我对它的用例仍然有些困惑。

谢谢!

0 投票
2 回答
63 浏览

terminal - Papermill 与 Cronjob:错误:papermill 是一个目录,找不到文件路径

我正在尝试使用 crontab 和 papermill 执行 jupyter notebook,但找不到正确的文件路径来让 crontab 运行 papermill。

这是我目前拥有的

我得到的错误是papermill is a directory

我曾经pip show papermill抓取文件路径,但我检查了一下,它只是一个目录。造纸厂文件本身在哪里,或者我在终端中何时可以运行什么文件papermill notebook.ipynb output.ipynb

如何使命令运行?

0 投票
0 回答
10 浏览

jupyter-notebook - Papermill schema_path KeyError(无,无)

我正在尝试使用papermill调用 .ipynb 笔记本。但是下面的代码

导致附加的错误消息。 在此处输入图像描述

在网上查找这个导致我到这个 github页面,但是在我的调用中添加“language='python'”文本并没有解决问题。

这是笔记本元数据,据我所知,它似乎已经设置了语言: 在此处输入图像描述

关于导致此错误消息的原因以及如何解决的想法?

0 投票
1 回答
62 浏览

python - 手动将造纸厂参数添加到笔记本

是否可以手动将造纸厂参数添加到 jupyter 笔记本中,例如在编辑器中?是否可以将造纸厂参数添加到 .py 文件并在转换为 .pynb 文件时保留它们?

语境:

我正在通过 Papermill 以自动方式运行 jupyter 笔记本。我想手动将参数添加到笔记本中,而不是使用 jupyter 或 jupyter 实验室界面。理想情况下,这些参数可以首先添加到 python 脚本 .py 文件中。将 .py 文件转换为 .ipynb 文件后,参数将保持不变。

我想要的工作流程如下所示:

  1. 将通用笔记本存储为带有参数的 <notebook>.py 文件在版本控制存储库中
  2. 将python脚本<notebook>.py转换为jupyter notebook<notebook>.ipynb
  3. 通过 papermill 运行 <notebook>.ipynb 并将参数传递给它
  4. 使用 nbconvert 生成没有代码的输出 pdf(使用 exclude_input 参数)

步骤 1-3 将通过可自动执行的脚本运行。我想使用 jupytext 来避免存储笔记本及其所有相关元数据。目前,我能找到将参数添加到笔记本的唯一方法是通过 jupyter/(lab) 接口添加它们。然后我可以用造纸机运行笔记本。但是,这不适用于 jupytext 转换。

*注意我会在其中添加“jupytext”标签,但它还不存在,我没有足够的代表来创建

编辑

醋栗的答案似乎是正确的。

但是,实际上似乎没有必要将参数标签添加到您的笔记本中以通过 papermill 注入参数。虽然 papermill 会发出no cell with tag parameters found in notebook警告,但它仍会注入参数。此外,您的 papermill 输出笔记本将有一个新单元格:

版本:

  • 造纸厂 = 2.2.3
  • jupytext = 1.12.0
0 投票
1 回答
445 浏览

kernel - 错误:jupyter_client.kernelspec.NoSuchKernel:在作为 docker 容器运行的 Airflow/papermill 中没有出现名为 python3 的内核

我正在尝试运行一个示例 papermill 笔记本,您可以在此处找到:在 Official Apache Airflow url

气流-github

与相应的 dag 文件,在上面指定的同一目录中找到。

我使用 docker-compose 程序集在本地运行此程序,您可以在 Airflow 网站上找到程序集:

气流码头页面

我不得不使用 Papermill 自定义构建图像,因为它看起来没有被烘焙到图像中:

在此处输入图像描述

这是我得到的一个错误:

jupyter_client.kernelspec.NoSuchKernel:没有名为 python3 的内核

如何添加内核?

更新:我设法解决了这个问题,但现在有了这个:

[2021-10-28, 22:47:57 UTC] {execute.py:84} INFO - 输入笔记本:/opt/ /dags/example_notebook.ipynb [2021-10-28, 22:47:57 UTC] { execute.py:85} INFO - 输出笔记本:out-2021-10-28T22:47:55.826195+00:00.ipynb [2021-10-28, 22:47:57 UTC] {driver.py:192} INFO - 从 /home/ /.local/lib/python3.6/site-packages/blib2to3/Grammar.txt [2021-10-28, 22:47:57 UTC] {driver.py:195} INFO生成语法表-将语法表写入 /home/ /.cache/black/21.9b0/Grammar3.6.15.final.0.pickle [2021-10-28, 22:47:57 UTC] {driver.py:199} INFO - 写入失败:[Errno 2] 没有这样的文件或目录:'/home/airflow/.cache/black/21.9b0/tmp27kcm8y_' [2021-10-28, 22:47:57 UTC] {driver.py:192} INFO -从 /home/ 生成语法表/.local/lib/python3.6/site-packages/blib2to3/PatternGrammar.txt [2021-10-28, 22:47:57 UTC] {driver.py:195} INFO - 将语法表写入 /home/ / .cache/black/21.9b0/PatternGrammar3.6.15.final.0.pickle [2021-10-28, 22:47:57 UTC] {driver.py:199} 信息 - 写入失败:[Errno 2] 没有这样的文件或目录:'/home/airflow/.cache/black/21.9b0/tmpnexc_sob' [2021-10-28, 22:47:57 UTC] {warnings.py:99} 警告 - /home/ /.local/lib /python3.6/site-packages/IPython/paths.py:67: UserWarning: IPython parent '/home/***' 不是可写位置,使用临时目录。" 使用临时目录。".format(parent))

0 投票
2 回答
40 浏览

excel - 我可以使用 papermill for aws sagemaker 笔记本创建 Excel 报告吗?

所以我知道我可以使用 papermill 以自动化的方式运行 jupyter notebook,但是如果我使用 AWS Sagemaker notebook 并使用 jupyter notebook 创建 excel 报告(导出到 excel)。如何找到我的 excel 文件?因为我只能将笔记本作为输出文件吗?

我打算使用下面的解决方案: https ://github.com/aws-samples/sagemaker-run-notebook/blob/master/QuickStart.md#using-existing-aws-primitives

0 投票
1 回答
62 浏览

python - Papermill 在 Github 操作中使用 AttributeError 运行错误

我正在运行我的 Python Notebook 作为我的 GitHub Action CI 的一部分,它运行了很长一段时间。但是今天它停止工作并抱怨此错误:

  1. 我没有改变任何中间: https ://github.com/DSPJ2021/syncmesh/compare/e97b1ced4ae90e27c7eb653dc27602edd9be81fa...1bdd32aefa621249a6d6223854d2c41f494da2d1

    仍然它只是停止工作:最后的工作动作/第一个失败的动作

  2. 我已经比较了工人版本,两者都是2.286.1

  3. 我比较了安装的python版本,两者都是3.10.2

  4. 我比较了安装的依赖项,但大多数是相同的。(工作/失败

    • 造纸厂是同一版本(2.3.3)
    • papermill-nb-runner 是一样的(1.1.16)
    • ipykernel 是一样的(6.7.0)
    • nbformat 相同(5.1.3)
    • nbconvert 相同(6.4.1)
  5. 我追踪了语言错误并解决了它(Commit)(Action Run)但直接进入下一个:

  1. 查了一下错误,发现:

  2. 更新我的.ipynpb版本后(从 4.2 到 4.5)。我只有这个错误:

有谁知道出了什么问题以及如何使它再次工作?

顺便说一句:它在我的机器上运行良好。