如何修复ImportError:没有名为'telebot'的模块

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

我正在配置机器人以从Zabbix发送警报,所以我安装了Python和模块:

sudo apt install python python-pip python-setuptools

之后,我安装了要在Zabbix上使用的机器人API:

python -m pip install --user pyTelegramBotAPI

/ usr / lib / zabbix / alertscripts /中创建了脚本:

#!/usr/bin/env python

import telebot,sys

BOT_TOKEN='123TOKENAQUI321'
DESTINATION=sys.argv[1]
SUBJECT=sys.argv[2]
MESSAGE=sys.argv[3]

MESSAGE = MESSAGE.replace('/n','\n')
tb = telebot.TeleBot(BOT_TOKEN)
tb.send_message(DESTINATION,SUBJECT + '\n' + MESSAGE)

更改的权限:

sudo chmod +x telegram

sudo chown -R zabbix telegram

并且在终端或Zabbix上测试脚本时,出现以下错误:

追踪(最近一次通话):文件“ / usr / lib / zabbix / alertscripts / telegram”,第2行,在导入telebot,sys ImportError:没有名为'telebot'的模块

我试图通过安装模块来解决:

python -m pip install --user telebot

安装模块无法解决问题,因此我尝试使用python3,并且终端上的脚本可以运行,但是在Zabbix中仍然显示相同的错误。我最终回到了python。

仅在使用命令pip list的python终端内部,远程机器人模块不会与help ("modules")一起出现。

有人知道这可能是造成问题的原因吗?

python telegram telegram-bot zabbix python-telegram-bot
1个回答
0
投票

我设法使用python3解决了这个问题,但是这次我再次删除了python的其他版本,然后再次安装,步骤如下:

sudo python -m pip uninstall pyTelegramBotAPI
sudo apt remove python python-pip python-setuptools
sudo apt install python3 python3-pip python3-setuptools python3-six
sudo python3 -m pip install pyTelegramBotAPI six
sudo pip install six
© www.soinside.com 2019 - 2024. All rights reserved.