@Proritsatel

Как считать и отправить информацию из файла через телеграмм-бота?

Всем привет!
Я считал данные с .CSV-файла и тут возник вопрос как мне в цикле отправлять по одному вопросу и получать ответ от пользователя.
Я предполагал, что считаю все вопросы в список, начну проходить список в цикле и на каждой итерации по сле отправки вопроса буду получать ответ от пользователя.
Но я пока не понимаю как это сделать, на ум сразу же приходит yeild, но вариант ещё не опробирован.
Код пока что примитивно минимальный.
@bot.message_handler(commands=['start', 'help'])
def send_welcome(message):
    markup = types.ReplyKeyboardMarkup(row_width=2)
    markupinline = types.InlineKeyboardMarkup()
    inlitem = types.InlineKeyboardButton(text='dsf', callback_data='tef')
    itembtn1 = types.KeyboardButton(text='Список вопросов 1')
    markup.add(itembtn1)
    markupinline.add(inlitem)
    bot.send_message(message.chat.id, "ВЫБЕРИТЕ КНОПКУ", reply_markup=markup)

def read_questions_file(file_name):
    file = open(file_name, "r", encoding='utf-8')
    questions = file.read().split('\n')
    print(questions)

# Обычный режим
@bot.message_handler(content_types=["text"])
def any_msg(message):
    NameLastName = ''
    name_of_plant = ''
    number_of_exp = ''
    keyboard = types.InlineKeyboardMarkup()
    callback_button = types.InlineKeyboardButton(text="Нажми меня", callback_data="tef")
    keyboard.add(callback_button)
    bot.send_message(message.chat.id, "сообщение из обычного режима", reply_markup=keyboard)

    if message.text == 'Список вопросов 1':
        qs = read_questions_file('Список вопросов 1.csv')
        bot.send_message(message.chat.id, qs[0])

@bot.callback_query_handler(func=lambda call:True)
def callback_inline(call):
    # Если сообщение из чата с ботом
    if call.message:
        if call.data == "tef":
            bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text="ответ")

bot.polling(none_stop=True)


Вот в этом момент хотелось бы, чтобы цикл построчно выдавал и принимал информацию.
if message.text == 'Список вопросов 1':
        qs = read_questions_file('Список вопросов 1.csv')
        bot.send_message(message.chat.id, qs[0])

Буду рад любой полезной информации!
  • Вопрос задан
  • 338 просмотров
Решения вопроса 1
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы