Как вывести результат парсинга в инлайн кнопку?
Коллеги Добрый день! Подскажите, aiogram библиотека, бот с инлайнкнопками, при нажатии на одну, выдается расписание в виде фото этот вариант работает, но проблема в том, что у файла расписания, каждую неделю новое название, добавил парсинг в код. Код с ручным изменением
keyboard = InlineKeyboardMarkup()
keyboard = types.InlineKeyboardMarkup(row_width=2)
menu_1 = InlineKeyboardButton(text='Расписание 🗓', callback_data="menu_1")
menu_2 = InlineKeyboardButton(text='Состав 🏒', callback_data="menu_2")
menu_3 = InlineKeyboardButton(text='🔥Заявка на турнир🔥 ', callback_data="menu_3")
menu_4 = InlineKeyboardButton(text='О команде 📌', callback_data="menu_4")
menu_5 = InlineKeyboardButton(text='Расписание игр турнира 📌', callback_data="menu_5")
keyboard.add(menu_1, menu_2, menu_3, menu_4, menu_5)
@dp.message_handler(commands=['start'])
async def process_start_command(message: types.Message):
await message.reply("Привет!\nЧто Вас интересует?", reply_markup=keyboard)
@dp.callback_query_handler(text_contains='menu_')
async def menu(call: types.CallbackQuery):
if call.data and call.data.startswith("menu_"):
code = call.data[-1:]
if code.isdigit():
code = int(code)
if code == 1:
text = '👉Актуальное расписание занятий!👈'
img_url = 'http://domen.ru/_si/0/93205683.jpg'
await call.message.edit_text(
f'{text}<a href="{img_url}">.</a>', parse_mode=ParseMode.HTML, reply_markup=keyboard)
Парсинг
r = requests.get(url='http://domen.ru/index/raspisanie/0-86/')
soup = BeautifulSoup(r.text, 'lxml')
img_tags = soup.find_all('img')
for img_tag in img_tags:
print(img_tag['src'])
В консоле вижу вывод файла в виде /_si/0/s93205683.jpg Подскажите, как реализовать вывод парсинга в кнопку?
Источник: Stack Overflow на русском