问题标签 [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.
airflow - Airflow Papermill 操作员:60 分钟后外部跳过的任务
我在 Docker 容器中使用 Airflow。我使用多个 Jupyter 笔记本运行 DAG。每次 60 分钟后我都会出现以下错误:
我试图调整配置文件,但找不到删除 1 小时超时的好选择。任何帮助,将不胜感激。
python - nbconvert 没有选择默认的 jupyter 主题
我在 docker 容器中运行 Jupyter。我在 Jupyter 中应用了不同的主题。我可以打开我的笔记本并查看新主题。我可以将它下载为 HTML 并且主题仍然存在。
准备好笔记本后,我使用 papermill 运行它的多个副本,然后运行以下代码片段,使用 nbconvert 将笔记本转换为 HTML。我的问题是它没有选择当前主题,而是选择了默认主题。
我查看了文档,它说默认模板应该类似于 Jupyter Interactive 视图,但导出的 HTML 看起来与 jupyter 不同。https://nbconvert.readthedocs.io/en/latest/usage.html#html
visual-studio-code - 向 Jupyter 笔记本添加标签
正如Jupyter
Visual Studio Code (VSC) 的 Miscrosoft 扩展的描述中所建议的,我来这里是为了询问您对 jupyter 笔记本中单元元数据的支持。目前似乎没有任何东西可用于添加单元元数据,因此,在使用papermill
VSC 编写 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 时参数化笔记本的任何替代方法?
谢谢
python - Papermill/Cronjob 从 Jupyter Notebook 生成/附加 CSV 而不会覆盖 CSV
我是编码新手,有一些可以使用指导的概念性问题。
我正在网页抓取,它输出到一个 csv,如果在我运行笔记本时 csv 已经存在,它会附加行。我计划使用带有 papermill 的 cronjobs 来自动运行刮,但我担心我可能会丢失一些代码来确保我不会覆盖当前的 csv。我想我可能还需要实现if name == __main__
,但我无法理解它的应用。
下面是我认为我可能需要编辑才能使用 papermill 并获得我想要的结果的代码。
如果我在 papermill 中运行它,它会知道我指的是哪个文件路径,还是使用 os.path 是最佳实践?
我是否需要将输出位置指定为生成/附加的 csv 的路径?
我需要为此使用
if name == __main__
吗?一般来说,我对它的用例仍然有些困惑。
谢谢!
terminal - Papermill 与 Cronjob:错误:papermill 是一个目录,找不到文件路径
我正在尝试使用 crontab 和 papermill 执行 jupyter notebook,但找不到正确的文件路径来让 crontab 运行 papermill。
这是我目前拥有的
我得到的错误是papermill is a directory
我曾经pip show papermill
抓取文件路径,但我检查了一下,它只是一个目录。造纸厂文件本身在哪里,或者我在终端中何时可以运行什么文件papermill notebook.ipynb output.ipynb
?
如何使命令运行?
python - 手动将造纸厂参数添加到笔记本
是否可以手动将造纸厂参数添加到 jupyter 笔记本中,例如在编辑器中?是否可以将造纸厂参数添加到 .py 文件并在转换为 .pynb 文件时保留它们?
语境:
我正在通过 Papermill 以自动方式运行 jupyter 笔记本。我想手动将参数添加到笔记本中,而不是使用 jupyter 或 jupyter 实验室界面。理想情况下,这些参数可以首先添加到 python 脚本 .py 文件中。将 .py 文件转换为 .ipynb 文件后,参数将保持不变。
我想要的工作流程如下所示:
- 将通用笔记本存储为带有参数的 <notebook>.py 文件在版本控制存储库中
- 将python脚本<notebook>.py转换为jupyter notebook<notebook>.ipynb
- 通过 papermill 运行 <notebook>.ipynb 并将参数传递给它
- 使用 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
kernel - 错误:jupyter_client.kernelspec.NoSuchKernel:在作为 docker 容器运行的 Airflow/papermill 中没有出现名为 python3 的内核
我正在尝试运行一个示例 papermill 笔记本,您可以在此处找到:在 Official Apache Airflow url
与相应的 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))
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
python - Papermill 在 Github 操作中使用 AttributeError 运行错误
我正在运行我的 Python Notebook 作为我的 GitHub Action CI 的一部分,它运行了很长一段时间。但是今天它停止工作并抱怨此错误:
我已经比较了工人版本,两者都是
2.286.1
我比较了安装的python版本,两者都是
3.10.2
-
- 造纸厂是同一版本(2.3.3)
- papermill-nb-runner 是一样的(1.1.16)
- ipykernel 是一样的(6.7.0)
- nbformat 相同(5.1.3)
- nbconvert 相同(6.4.1)
我追踪了语言错误并解决了它(Commit)(Action Run)但直接进入下一个:
查了一下错误,发现:
更新我的
.ipynpb
版本后(从 4.2 到 4.5)。我只有这个错误:
有谁知道出了什么问题以及如何使它再次工作?
顺便说一句:它在我的机器上运行良好。