Bet*_*elo 11 python scheduled-tasks jupyter-notebook papermill
我在python jupyter笔记本中有一个代码,但我需要每天运行这个,所以我想知道是否有办法设置这个,我真的很感激它
Zep*_*hro 21
最近更新我遇到了papermill,用于执行和参数化笔记本电脑.
https://github.com/nteract/papermill
papermill local/input.ipynb s3://bkt/output.ipynb -p alpha 0.6 -p l1_ratio 0.1
Run Code Online (Sandbox Code Playgroud)
这似乎比nbconvert好,因为你可以使用参数.您仍然必须使用调度程序触发此命令.下面是在Ubuntu上使用cron的示例.
老答案
nbconvert --execute
Run Code Online (Sandbox Code Playgroud)
可以执行一个jupyter笔记本,这个嵌入到cronjob中会做你想要的.
Ubuntu上的示例设置:
使用以下内容创建yourscript.sh:
/opt/anaconda/envs/yourenv/bin/jupyter nbconvert \
--execute \
--to notebook /path/to/yournotebook.ipynb \
--output /path/to/yournotebook-output.ipynb
Run Code Online (Sandbox Code Playgroud)
你有更多的选择,除了 - 到笔记本.我喜欢这个选项,因为你之后有一个完全可执行的"log"-File.
我建议使用虚拟环境来运行您的笔记本,以避免将来的更新弄乱您的脚本.不要忘记将nbconvert安装到环境中.
现在创建一个cronjob,每天运行,例如在上午5:10,通过键入crontab -e
您的终端并添加以下行:
10 5 * * * /path/to/yourscript.sh
Run Code Online (Sandbox Code Playgroud)
小智 5
尝试SeekWell Chrome 扩展程序。它允许您直接从 Jupyter Notebooks 安排笔记本每周、每天、每小时或每 5 分钟运行一次。如果您愿意,您还可以将 DataFrame 直接发送到 Sheets 或 Slack。
这是一个演示视频,上面的 Chrome 应用商店链接中还有更多信息。
**披露:我是 SeekWell 联合创始人
如果想要更高的品质,最好与气流结合。我将它们打包在 Docker 镜像中,https://github.com/michaelchanwahyan/datalab。
它是通过修改开源包 nbparameterize 并集成传递参数(例如execution_date)来完成的。可以即时生成图表。输出可以更新并保存在笔记本内。
当它被执行时
此外还安装配置了spark、keras、tensorflow等常用工具。
归档时间: |
|
查看次数: |
18119 次 |
最近记录: |