Использую библиотеку telebot для ботов.
Проблема такая, не получается обработать ссылку. Сценарий такой, пользователь вводит ссылку, но бывает такое, что ссылка может быть коротка, без https, www, например - test.ru. Мне надо сделать такую обработку, что бы бот сам добавлял https и www, а если пользователь указывает полную ссылку, т.е с
https://www.test.ru - то все ок и переходим к следующему шагу.
Когда пользователь нажимает - start, вызывается функция:
@bot.callback_query_handler(func=lambda message: True)
def send_anytext(message):
chat_id = message.message.chat.id
if message.data == 'utm_links':
msg = bot.send_message(chat_id, 'Введите адрес сайта в формате https://domain.ru/\n\nНапример, https://yandex.ru/', parse_mode='HTML')
bot.register_next_step_handler(msg, get_utm_source)
Следующий шаг, поидее на функции get_utm_source - происходит обработка
def get_utm_source(message):
global get_utm_source;
get_utm_source = message.text;
chat_id = message.chat.id
msg = bot.send_message(chat_id, "Введите сообщение")
bot.register_next_step_handler(msg, get_utm_medium)
Я сделал отдельно вот такую конструкцию:
def convert(url):
if url.startswith('http://www.'):
return 'http://' + url[len('http://www.'):]
if url.startswith('www.'):
return 'http://' + url[len('www.'):]
if not url.startswith('http://'):
return 'http://' + url
return url
Но что-то не могу понять как это встроить в код бота.