У тебя неправильная конструкция if-elif-else, не надо использовать такое
if text == 'привет' or 'привет)' or 'здравствуйте': pass
.
Вот верно
if text == 'привет' or text == 'привет)' or text == 'здравствуйте': pass
Вот код исправный:
import telebot
TOKEN = "TOKEN"
bot = telebot.TeleBot(TOKEN)
@bot.message_handler(commands=['start', 'go'])
def start_handler(message):
bot.send_message(message.chat.id, 'Привет, напиши тривиальное название химического вещества, а я посмотрю, что о нём знаю.')
@bot.message_handler(content_types=['text'])
def text_handler(message):
text = message.text.lower()
# from re import sub
# text = sub(r'[^\w\s]', '', text) # Можешь использовать для удаления всех не нужных знаков по типу - : ; ! , ? . - _ и т.д
chat_id = message.chat.id
if text == 'привет' or text == 'привет)' or text == 'здравствуй' or text == 'здравствуйте' or text == 'здорово' or text == 'здравствуй)' or text == 'здравствуйте)' or text == 'ghbdtn' or text == 'plhfdcndeqnt' or text == 'plhfdcndeq':
bot.send_message(chat_id, 'Привет, меня зовут Врунишка - главный знаток химических названий... А если серьёзно, то я всего-навсего обычный бот, который любит химию.\n\n'
'Буду рад поделиться своими знаниями. Просто напиши название вещества, а я посмотрю в своей химической базе данных.')
elif text == 'как дела?':
bot.send_message(chat_id, 'Хорошо, а у тебя?')
elif text == 'бензол' or text == 'benzene' or text == 'бензен' or text == 'фениловый водород' or text == 'фенан' or text == 'фениленгидрид' or text == 'циклогекса-1,3,5-триен' or text == '1,3,5-циклогексатриен' or text == '[6]-аннулен' or text == '[6]аннулен':
bot.send_message(chat_id, 'Название ИЮПАК: бензол, циклогекса-1,3,5-триен\n'
'Прочие названия: бензен, фениловый водород, [6]-аннулен\n'
'На английском: benzene, phenane, phenylene hydride, 1,3,5-Cyclohexatriene, [6]Annulene\n\n'
'Брутто-формула: C\u2086H\u2086 \n'
'Молярная масса: 78,11 г/моль')
else:
bot.send_message(chat_id, 'Простите, я ваc не понял :(')
bot.polling(none_stop=True, interval=0)