我每天下午尝试使用Google的示例YouTube Python上传脚本将视频上传到YouTube(请参阅developers.google上的Python代码示例,我没有足够的声誉来发布更多链接......)。我想将其作为 cronjob 运行。我已经创建了 client_secrets.json 文件并手动测试了脚本。当我手动运行它时,它工作正常,但是当我将脚本作为 cronjob 运行时,出现以下错误:
若要使此示例运行,需要填充 client_secrets.json 文件位于:
/usr/local/cron/scripts/client_secrets.json
包含来自开发者控制台的信息 https://console.developers.google.com/
有关 client_secrets.json 文件格式的更多信息,请 访问: https://developers.google.com/api-client-library/python/guide/aaa_client_secrets
我已经在JSON文件中包含了这些信息,-oauth2.json文件也存在于/usr/local/cron/scripts中。
问题是否是因为 cronjob 以 root 身份运行脚本,并且不知何故这两个文件之一中的凭据不再有效?有什么想法吗?
干杯詹姆斯
,所以 7 个月后我又回到了这个 cron 问题。事实证明,upload2youtube.py
示例文件被硬编码为在当前目录中查找clients_secrets.json
文件。这就解释了为什么我可以从本地目录手动运行它,但不能在 cron 上运行它。我已经在示例文件中包含了完整路径,现在工作正常。