Как сделать открытие сайта в тг боте
@bot.message_handler(commands=["site"])
def site(message):
webbrowser.open("сайт")
нажимаю на команду на телефоне и другие люди ,но открывается сайт только на компе(хостинге). Как исправить мою ошибку?
Ответы (1 шт):
Автор решения: Ben Puls
→ Ссылка
Вариантов передать пользователю сайт всего 2.
Первый, используйте кнопку, в которую встроена ссылка с сайтом.
@bot.message_handler(commands=['site']) #создание команды
def site(message):
markup = types.InlineKeyboardMarkup() # создаём кнопку
button1 = types.InlineKeyboardButton("текст", url='ссылка') # добавляем текст кнопки и ссылку
markup.add(button1) # добавляем кнопку
bot.send_message(message.chat.id, "Текст с кнопкой", reply_markup=markup) # отправляем сообщение со встроенной кнопкой
Результат:
Второй вариант. Использование Telegram Web Apps. При помощи него вы создадите веб-приложение внутри телеграм. Документация.
Сперва перейдите в BotFather и напишите команды, чтобы зарегистировать Web-приложение.
/setmenubuttonВыбираем бота и отправляем ссылку, куда мы будем перенаправлять пользователя, также пишем название кнопки
Теперь пишем код, создавая веб-приложение.
@bot.message_handler(commands=['site']) #создание команды
def site(message):
markup = types.InlineKeyboardMarkup() # создаём кнопку
web_info = types.WebAppInfo('https://ru.stackoverflow.com') # ссылка для приложения
button1 = types.InlineKeyboardButton("Веб", web_app=web_info) # добавляем текст кнопки и указываем переменную
markup.add(button1) # добавляем кнопку
bot.send_message(message.chat.id, "Текст с кнопкой",
reply_markup=markup) # отправляем сообщение со встроенной кнопкой
Результат:



