Задать вопрос
@hey_umbrella

Как сохранить сообщение в sqlite после нажатия на inline кнопку?

Мой бот парсит фотки с pinterest и отправляет их ввиде ссылки,под ними есть inline кнопка,я хочу,чтобы после нажатия на нее ссылка добавлялась в ба0зу данных,а потом вывести в профиле

for _ in range(1,ScrollNumber):
        driver.execute_script("window.scrollTo(1,10000)")
        time.sleep(sleepTimer)
    soup = BeautifulSoup(driver.page_source,'html.parser')

    for link in soup.find_all('img'):
        src = link.get('src')
        if src.find("/236x/") != -1:
            src = src.replace("/236x/","/originals/")
        elif src.find(".gif") != -1:
            markup = telebot.types.InlineKeyboardMarkup()
            markup.add(telebot.types.InlineKeyboardButton(text='Сохранить❔', callback_data="save"))
            bot.send_message(message.chat.id, src, reply_markup=markup)
        else:
            pass
    bot.send_message(message.chat.id,"CPU USED TO PARSE -" + str(psutil.cpu_percent()) + "%")


@bot.callback_query_handler(func=lambda call: True)
def query_handler(call):
    if call.data == 'save':
        markup = telebot.types.InlineKeyboardMarkup()
        bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text="Сохранен в профиль.✅", reply_markup=markup)


60b5495516733772011909.png
  • Вопрос задан
  • 290 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 2
SoreMix
@SoreMix Куратор тега Python
yellow
Ссылка просто текстом отправлена?

В вашей функции query_handler вы можете получить текст оригинального сообщения (в данном случае это ссылка) через call.mesaage.text, дальше уже сохраняйте в БД
Ответ написан
yupiter7575
@yupiter7575
Python программист
В чем проблема? Отслеживаете нажатие на кнопку, при клике сохраняете файл на компьютер, в бд записываете путь к нему.
Ответ написан
Ваш ответ на вопрос

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

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