Бот для telegram на Python.

WIKIPEDIA-БОТ

Да­вай научим нашего бота не прос­то отсы­лать сооб­щения обратно, а чему‑нибудь поин­терес­нее. Нап­ример, по вве­ден­ному сло­ву давать статью на Википе­дии. Здесь нам поможет модуль Wikipedia:

pipinstallwikipedia

Го­товим код.

importtelebot,wikipedia,re

# Создаем экземпляр бота

bot=telebot.TeleBot(‘Здесь впиши токен, полученный от @botfather’)

# Устанавливаем русский язык в Wikipedia

wikipedia.set_lang(«ru»)

# Чистим текст статьи в Wikipedia и ограничиваем его тысячей символов

defgetwiki(s):

try:

ny=wikipedia.page(s)

# Получаем первую тысячу символов

wikitext=ny.content[:1000]

# Разделяем по точкам

wikimas=wikitext.split(‘.’)

# Отбрасываем всЕ после последней точки

wikimas=wikimas[:-1]

# Создаем пустую переменную для текста

wikitext2=»

# Проходимся по строкам, где нет знаков «равно» (то есть все, кроме заголовков)

forxinwikimas:

ifnot(‘==’inx):

# Если в строке осталось больше трех символов, добавляем ее к нашей переменной и возвращаем утерянные при разделении строк точки на место

if(len((x.strip()))>3):

wikitext2=wikitext2+x+’.’

else:

break

# Теперь при помощи регулярных выражений убираем разметку

wikitext2=re.sub(‘\([^()]*\)’,»,wikitext2)

wikitext2=re.sub(‘\([^()]*\)’,»,wikitext2)

wikitext2=re.sub(‘\{[^\{\}]*\}’,»,wikitext2)

# Возвращаем текстовую строку

returnwikitext2

# Обрабатываем исключение, которое мог вернуть модуль wikipedia при запросе

exceptExceptionase:

return’В энциклопедии нет информации об этом’

# Функция, обрабатывающая команду /start

@bot.message_handler(commands=[«start»])

defstart(m,res=False):

bot.send_message(m.chat.id,’Отправьте мне любое слово, и я найду его значение на Wikipedia’)

# Получение сообщений от юзера

@bot.message_handler(content_types=[«text»])

defhandle_text(message):

bot.send_message(message.chat.id,getwiki(message.text))

# Запускаем бота

bot.polling(none_stop=True,interval=0)

Создайте подобный сайт на WordPress.com
Начало работы