当 python 代码嵌入(通过网状)在 R 脚本中时无法完成 Cron Job

Can't complete Cron Job when python code is embed (through reticulate) inside the R script

我创建了一个 R 脚本,它首先通过 py_run_file() 函数启动一个 python 脚本,然后执行一些 R 代码。我需要安排在一天中的某个时间启动此类脚本,因此我使用了包 cronR。不幸的是,当我调用脚本函数 作为 cron 作业 时,作业冻结并且不会结束。这是一个可重现的例子:

library(reticulate)

today <- Sys.Date()

use_python("~/miniconda3/bin/python3.8",
           required = TRUE)

py_run_file("~/Desktop/test.py")

print(paste("End on the",
            today))

这是 test.py 文件的内容:

print("python script!")

你有什么建议吗?非常感谢您的帮助!

出于某种奇怪的原因,每当你 运行 使用网状包的 R Cron 作业时,经过大量试验和错误后我发现,我们必须像这样使用它:

reticulate::use_python(python = '/usr/bin/python3', required = T)

reticulate::source_python("FULL_PATH_TO_PYTHON_FILE.py")

而不是使用 library(reticulate) 导入库,这东西奇怪地起作用了!