每天在特定时间运行 google colab

Sad*_*ado 15 python airflow jupyter-notebook google-colaboratory

我最近构建了一个在Google Colaboratory上运行的Python程序,我需要每天在特定时间运行该程序,那么有没有办法安排它在Google Colab上运行?

Pra*_*wal 10

您需要创建一个notebooks.csv所有 Colaboratory URL的列表。然后用于colabctl运行每个笔记本(按顺序,在 CSV 中同步提到),然后在再次运行它们之前暂停 n 秒的时间。

然后你可以运行python colabctl.py <end-string> <sleep-seconds>

gCookies.pkl回购中有一个文件。确保您的本地 Python 版本与用于创建此序列化 pkl 文件的版本相同。

参考:https : //github.com/TensorTom/colabctl

现在我们已经准备好了笔记本和脚本,接下来是能够通过 SSH 连接到 Google colab。

  • 在 ngrok.com 上创建一个帐户
  • 将下面的代码复制并粘贴到 colab 中,它会安装 ngrok 并为我们创建一个隧道

来源:https : //gist.github.com/yashkumaratri/204755a85977586cebbb58dc971496da#file-google-colab-ssh

  • 现在,在您的本地机器上,打开终端和 SSH 以连接到 Colab 系统。

ssh root@0.tcp.ngrok.io -p <port_num_generated_above>

现在您可以通过 SSH 终端访问整个系统。并且可以继续使用 colabctl 到本地环境中的任何其他玉米脚本来执行您的远程 colab 脚本。

  • 我正在寻找一种按计划在 Google Colab 上运行它的方法。不是如何在我的本地 python 安装上运行它。 (3认同)

Don*_*d S 5

如果您愿意为此付费,您可以使用 Google Cloud 调度程序:

https://cloud.google.com/scheduler

设置详细信息的相关链接:

https://minimaxir.com/2018/11/cheap-cron/

https://cloud.google.com/scheduler/docs/quickstart

如果没有,除了之前的答案,您还可以考虑将脚本移动到您的本地环境并使用 Task Scheduler。


Sy *_*Ker 3

如果您愿意,您可以使用colabctl从命令行按计划运行 Google Colaboratory 笔记本。只需将 colabctl.py 添加到 cron 作业即可。

注意:如果您想在无头服务器上运行它,您首先需要从桌面运行一次,将您的登录 cookie 保存到 pickle 文件中,然后将该 pickle 与 colabctl 一起上传到您的服务器。