如果我直接运行python文件是没有问题的。 但是,当在 crontab 中运行时,会出现错误“找不到文件”。
selenium.common.exceptions.InvalidArgumentException:
Message: invalid argument: File not found : /home/ubuntu/service/image.png
我编写了代码,使用 selenium 'send_keys' 将文件上传到输入标记。
input = WebDriverWait(driver, 5).until(EC.presence_of_element_located((By.XPATH, "//input[@name='encoded_image']")))
input.send_keys("/home/ubuntu/service/image.png")
#crontab设置
31 16 * * * root python3 /home/ubuntu/service/run.py
为什么这个问题只出现在crontab中?
这是因为python执行是“root”账户而出现的问题
使用 root 帐户运行会将 cwd(当前工作目录)指定为“/root”而不是“/home”。
我通过更改帐户解决了这个问题,如下。
30 0 * * * ubuntu python3 /home/ubuntu/service/run.py