Python请求'连接中止。'如果它将以cronjob开始

时间:2017-12-31 00:10:09

标签: python linux raspberry-pi python-requests

如果我正常启动我的python文件它可以工作。但如果我用cron启动它,所有请求都会出现('Connection aborted.', gaierror(-2, 'Name or service not known'))错误。

你之前可以在我的问题上看到我的cron配置。但这没关系。

1 个答案:

答案 0 :(得分:3)

cron作业在不同的环境(通常是shell)中执行,用户登录到终端所具有的环境。这意味着,对于cron,可能无法声明可能在您登录时声明的环境变量,或者可能具有不同的值。

requests报告的错误与将主机名解析为IP地址有关,这通常意味着DNS配置问题。

因此,请查找在终端环境中声明的未为cron设置的任何环境变量。这些可能是LOCALDOMAINRES_OPTIONS,但根据您的DNS设置,可能还有其他人。 resolv.conf手册页中有一些信息。

您可以通过设置将环境转储到文件的测试cron作业来了解cron环境:

MM HH * * * env > ~/cron_env

将MM和HH更改为很快就会发生几分钟和几小时。然后检查文件~/cron_env的内容,并将其与用户的内容进行比较。