如何使用 crontab 使用 python 通过 telegram bot 发送照片?

问题描述 投票:0回答:1

我有一个问题,当 crontab 运行我的 python 脚本时,我的电报机器人无法读取本地 .png 文件。有人如何处理这个问题吗?非常感谢。

import telegram
chat_id = '***'
BOT_TOKEN = '***'
bot = telegram.Bot(token=BOT_TOKEN)

bot.sendPhoto(photo=open(os.path.abspath('./github/project/photo.png'), 'rb'), chat_id=chat_id)

我的 crontab 任务:

        • 1-5 ~/.pyenv/versions/miniconda3-4.3.30/envs/project1/bin/python ~/github/project/test.py > ~/log/output.log 2>&1

我尝试先将照片保存在内存中,但不起作用。

python linux cron telegram
1个回答
0
投票

劳尔是正确的。克朗并不是罪魁祸首。检查你的蟒蛇。

os.path.abspath() 将为您找到文件的绝对路径。

因此,文件名是唯一需要的参数,不需要相对路径。

bot.sendPhoto(photo=open(os.path.abspath('photo.png'), 'rb'), chat_id=chat_id)

https://docs.python.org/3/library/os.path.html

© www.soinside.com 2019 - 2024. All rights reserved.