[Для новичков] Python для заработка: манимейкинг, арбитраж, SEO. Реальные кейсы

image

Сервисов, предоставляющих информацию о погоде, достаточно много, вот только какому из них верить? Когда я стал часто ездить на велосипеде, мне захотелось обладать наиболее точной информацией о погодных условиях в том месте, где я катаюсь.

Первой мыслью было собрать небольшую DIY погодную станцию с датчиками и получать данные с нее. Но я не стал «изобретать велосипед» и в качестве источника проверенных данных выбрал погодную информацию, которая используется в гражданской авиации, а именно METAR (METeorological Aerodrome Report) и TAF (TAF — Terminal Aerodrome Forecast). В авиации от погоды зависят жизни сотен людей, поэтому прогнозы максимально точны.

Эта информация в круглосуточном режиме транслируется голосом на каждом современном аэродроме в виде ATIS (Automatic Terminal Information Service) и VOLMET (от франц. vol — полет и météo — погода). Первый предоставляет информацию о фактической погоде на аэродроме, а второй — прогноз на ближайшие 24-30 часов, причем не только на аэродроме трансляции, но и на других.

Пример работы ATIS аэропорта Внуково

Пример работы VOLMET аэропорта Внуково

Каждый раз таскать с собой радиосканер или трансивер на соответствующий диапазон неудобно, и мне захотелось создать бота в Telegram, который по нажатию кнопки позволяет получить такой же прогноз. Выделять под это отдельный сервер как минимум нецелесообразно, равно как и гонять запросы на домашнюю Raspberry.

Поэтому в качестве бэкэнда я решил использовать сервис Облачные функции Selectel. Количество запросов будет ничтожно малое, поэтому такой сервис обойдется фактически бесплатно (по моим подсчетам выйдет 22 рубля за 100 000 запросов).

Подготовка бэкэнда

Создание функции

В панели управления my.selectel.ru открываем представление Облачная платформа и создаем новый проект:

image

После того как проект создан, переходим в раздел Функции:

Нажимаем кнопку Создать функцию и задаем ей нужное имя:

После нажатия Создать функцию у нас появится представление созданной функции:

Перед тем, как приступить к созданию кода на Python, потребуется создать бота в Telegram. Расписывать, как это делается, я не буду — детальная инструкция есть в нашей базе знаний. Главное для нас — токен созданного бота.

Готовим код

В качестве источника надежных данных я выбрал Национальное управление океанических и атмосферных исследований США (англ. National Oceanic and Atmospheric Administration, NOAA). Это научное агентство в реальном времени обновляет данные на своем сервере в формате TXT.

Ссылка для получения данных METAR:

https://tgftp.nws.noaa.gov/data/observations/metar/stations/{код аэропорта по ICAO}.TXT

Обратите внимание на регистр.

В моем случае ближайшим аэропортом является Внуково, его код по ICAO — UUWW. Переход на сформированный URL выдаст следующее:

2020/08/10 11:30 UUWW 101130Z 31004MPS 9999 SCT048 24/13 Q1014 R01/000070 NOSIG

Первая строка — время актуальности прогноза по Гринвичу. Вторая строка — сводка о фактической погоде. Пилоты гражданской авиации без проблем поймут, что означает эта строка, однако нам нужна расшифровка:

  • [UUWW] — Внуково, город Москва (Россия — RU);
  • [101130Z] — 10-й день месяца, 11 часов 30 минут по Гринвичу;
  • [31004MPS] — направление ветра 310 градусов, скорость 4 м/с;
  • [9999] — горизонтальная видимость 10 км и более;
  • [SCT048] — рассеянные/разбросанные облака на высоте 4800 футов (~1584м);
  • [24/13] — температура 24°C, точка росы 13°C;
  • [Q1014] — давление (QNH) 1014 гектопаскалей (750 мм рт. ст.);
  • [R01/000070] — коэффициент сцепления на полосе 01 — 0,70;
  • [NOSIG] — без существенных изменений.

Приступаем к написанию программного кода. Для начала потребуется импортировать функции request и pytaf:

from urllib import request import pytaf

Указать переменные и подготовить функцию декодирования:

URL_METAR = "https://tgftp.nws.noaa.gov/data/observations/metar/stations/UUWW.TXT" URL_TAF = "https://tgftp.nws.noaa.gov/data/forecasts/taf/stations/UUWW.TXT"
def parse_data(code):     code = code.split('n')[1]     return pytaf.Decoder(pytaf.TAF(code)).decode_taf()

Перейдем к TAF.

https://tgftp.nws.noaa.gov/data/forecasts/taf/stations/{код аэропорта по ICAO}.TXT

Регистр также важен.

Как и в предыдущем примере, посмотрим прогноз в аэропорту Внуково:

2020/08/10 12:21 TAF UUWW 101050Z 1012/1112 28003G10MPS 9999 SCT030 TX25/1012Z TN15/1103Z         TEMPO 1012/1020 -TSRA BKN020CB         BECMG 1020/1021 FEW007 BKN016         TEMPO 1021/1106 -SHRA BKN020CB PROB40         TEMPO 1021/1106 -TSRA BKN020CB         BECMG 1101/1103 34006G13MPS

Особенно обратим внимание на строки TEMPO и BECMG. TEMPO означает то, что фактическая погода в указанный промежуток будет периодически меняться. BECMG — погода постепенно изменится в указанный промежуток времени.

То есть строка:

TEMPO 1012/1020 -TSRA BKN020CB

Будет означать:

  • [1012/1020] — в промежуток с 12 до 20 часов (по Гринвичу);
  • [-TSRA] — гроза (TS = thunderstorm) с дождем (RA = rain) небольшой интенсивности (знак минус);
  • [BKN020CB] — значительная (BKN = broken), кучево-дождевая (CB = cumulonimbus) облачность на высоте 2000 футов (610 метров) над уровнем моря.

Терминов, означающих погодные явления, достаточно много, и запомнить их сложновато. Код для запроса TAF пишется аналогичным образом.

Заливаем код в облако

Чтобы не тратить зря время, возьмем шаблон телеграм-бота из нашего репозитория cloud-telegram-bot. Там есть предварительно подготовленный requirements.txt и setup.py с корректной структурой директорий.

Поскольку в коде мы будем обращаться к модулю pytaf, то его версию следует сразу добавить в requirements.txt

pytaf~=1.2.1

Переходим к редактированию bot/tele_bot.py. Убираем все лишнее и дописываем наш код.

import os from urllib import request import telebot import pytaf  TOKEN = os.environ.get('TOKEN') URL_METAR = "https://tgftp.nws.noaa.gov/data/observations/metar/stations/UUWW.TXT" URL_TAF = "https://tgftp.nws.noaa.gov/data/forecasts/taf/stations/UUWW.TXT"  bot = telebot.TeleBot(token=TOKEN, threaded=False) keyboard = telebot.types.ReplyKeyboardMarkup(resize_keyboard=True) keyboard.row('/start', '/get_metar', '/get_taf')  def start(message):     msg = "Привет. Это бот для получения авиационного прогноза погоды "            "с серверов NOAA. Бот настроен на аэропорт Внуково (UUWW)."     bot.send_message(message.chat.id, msg, reply_markup=keyboard)  def parse_data(code):     code = code.split('n')[1]     return pytaf.Decoder(pytaf.TAF(code)).decode_taf()  def get_metar(message):     # Fetch info from server.     code = request.urlopen(URL_METAR).read().decode('utf-8')     # Send formatted answer.     bot.send_message(message.chat.id, parse_data(code), reply_markup=keyboard)  def get_taf(message):     # Fetch info from server.     code = request.urlopen(URL_TAF).read().decode('utf-8')     # Send formatted answer.     bot.send_message(message.chat.id, parse_data(code), reply_markup=keyboard)  def route_command(command, message):     """     Commands router.     """     if command == '/start':         return start(message)     elif command == '/get_metar':         return get_metar(message)     elif command == '/get_taf':         return get_taf(message)  def main(**kwargs):     """     Serverless environment entry point.     """     print(f'Received: "{kwargs}"')     message = telebot.types.Update.de_json(kwargs)     message = message.message or message.edited_message     if message and message.text and message.text[0] == '/':         print(f'Echo on "{message.text}"')         route_command(message.text.lower(), message)
  • Упаковываем всю директорию в ZIP-архив и переходим в панель управления к созданной функции.
  • Нажимаем Редактировать и загружаем архив с кодом.
  • Заполняем относительный путь в файлу tele_bot (расширение .py можно не указывать) и эндпойнт-функцию (в приведенном примере это main).
  • В разделе Переменные окружения пишем переменную TOKEN и присваиваем ей токен нужного телеграм-бота.
  • Нажимаем Сохранить и развернуть, после чего переходим в раздел Триггеры.
  • Ставим переключатель HTTP-запрос, чтобы сделать запрос публичным.

У нас появился URL для публичного вызова функции. Осталось лишь настроить вебхук. Найдите нашего бота @SelectelServerless_bot в Telegram и зарегистрируйте своего бота командой:

/setwebhook  

Результат

Если все сделано правильно, то ваш бот сразу начнет работать и отображать актуальную сводку авиационной погоды прямо в мессенджере.

Разумеется, код можно дорабатывать, однако даже в текущем состоянии его достаточно, чтобы узнать самую точную погоду и прогноз из проверенного источника.

Полную версию кода вы найдете в нашем репозитории на GitHub.

Отличный учебник для тех, кто хочет научиться писать ботов для Telegram с использованием библиотеки pyTelegramBotAPI. Существует альтернативный вариант мана, написанный другим автором, там используется библиотека aiogram.

  • Учебник здесь

  • Все исходные коды к урокам расположены в этом репозитории

Спасибо, что читаете! Подписывайтесь на меня в социальных сетях Facebook, Twitter, VKOK и мессенджерах Telegram и TamTam!

Читайте анонсы и посты целиком в ЖЖ, Medium, Голосе и Яндекс.Дзен!

Поддержите мой блог финансово. Все донаты пойдут на оплату хостинга и развитие сайта!

Приветствую тебя, читатель! Telegram Bot API – это мощный инструмент для вообще чего угодно. Автоматизация действий, работа с пользователями, онлайн-магазины, игры и много чего ещё. В этом учебнике мы научимся писать ботов для Telegram на языке Python.

Сразу оговорюсь: тот бот, который получится в итоге – это лишь прототип, цель всех этих постов – рассказать об основах ботостроения, показать, как можно за короткое время написать простого бота для своих нужд.

Язык программирования будет Python 3, но это не означает, что любители PHP, Ruby и т.д. в пролёте; все основные принципы совпадают. Я не буду особо останавливаться на описании самого языка, желающие могут ознакомиться с документацией по Python здесь.

Подготовка к запуску

Взаимодействие ботов с людьми основано на HTTP-запросах. Чтобы не мучаться с обработкой «сырых» данных, воспользуемся библиотекой pyTelegramBotAPI, которая берет на себя все нюансы отправки и получения запросов, позволяя сконцентрироваться непосредственно на логике. Установка библиотеки предельно простая:

pip install pytelegrambotapi python3 

Скриншот из терминала с запущенным интерпретатором Python

Обратите внимание: библиотека называется pyTelegramBotAPI, а не telebot. Последнюю ставить не нужно!

Теперь можно выйти из режима Python-консоли (Ctrl+Z или Ctrl+D, или exit())

Пишем простого echo-бота

Ну, довольно слов, перейдем к делу. В качестве практики к первому уроку, напишем бота, повторяющего присланное текстовое сообщение. Создадим каталог, а внутри него 2 файла: bot.py и config.py. Я рекомендую выносить различные константы и настройки в файл config.py, дабы не загромождать другие. В файл config.py впишем:

# Токен ненастоящий :) Подставьте свой token = '1234567890:AAE_abCDEFghijKLmNOpqRsTuVWxyz' 

Теперь надо научить бота реагировать на сообщения. Напишем обработчик, который будет реагировать на все текстовые сообщения.

@bot.message_handler(content_types=["text"]) def repeat_all_messages(message): # Название функции не играет никакой роли     bot.send_message(message.chat.id, message.text) 

У читателя возникнет вопрос: зачем там символ “@”? Что это вообще за message_handler? Дело в том, что после приёма сообщения от Telegram его надо обработать по-разному в зависимости от того, что это за сообщение: текст “привет” или текст “пока”, может быть, вообще стикер или музыка. Первое, что придёт в голову – написать множество конструкций if-then-else, но такой подход некрасивый и позволяет быстро запутаться. Для решения этой проблемы автор библиотеки pyTelegramBotAPI реализовал механизм хэндлеров, которые используют питоновские декораторы (пока просто запомним это слово). В хэндлере описывается, в каком случае необходимо выполнять ту или иную функцию. Например, хэндлер @bot.message_handler(content_types=["text"]) выполнит нижестоящую функцию, если от Telegram придёт текстовое сообщение, а хэндлер @bot.message_handler(commands=["start"]) сработает при получении команды /start.

Теперь запустим бесконечный цикл получения новых записей со стороны Telegram:

if __name__ == '__main__':     bot.infinity_polling() 

Функция infinity_polling запускает т.н. Long Polling, бот должен стараться не прекращать работу при возникновении каких-либо ошибок. При этом, само собой, за ботом нужно следить, ибо сервера Telegram периодически перестают отвечать на запросы или делают это с большой задержкой приводя к ошибкам 5xx)

Итак, полный код файла bot.py выглядит следующим образом:

import config import telebot  bot = telebot.TeleBot(config.token)  @bot.message_handler(content_types=["text"]) def repeat_all_messages(message): # Название функции не играет никакой роли     bot.send_message(message.chat.id, message.text)  if __name__ == '__main__':      bot.infinity_polling() 

Готово! Осталось запустить бота: python3 bot.py

Бот работает

На этом первый урок окончен.

Урок №2 → Home » Телеграмм » Боты » Разработка бота для Телеграм: пишем быстро и правильно

Боты в Телеграм стали неотъемлемой частью жизни многих каналов. Они упрощают большинство рабочих процессов и берут всю рутинную работу на себя. Все они представляют собой лишь строчки кода, написанные программистами. Отметим, что бот telegram на python является самым доступным в плане разработки и цены на него. Но в скорости python Boty слегка проигрывают ботам на Php.

В сегодняшней статье мы поговорим с вами о том, как написать бота для Телеграм на python, какие языки программирования чаще всего используются и многое другое. Разработка на питоне всегда была проще.

Для начала давайте узнаем, какими преимуществами обладает написание программы (по сравнению с созданием ботов на конструкторах).

Во-первых, все конструкторы ограничены. Некоторые способны создавать только ботов для общения, некоторые создают только бизнес-ботов, некоторые только игровых и т.д. В то время как программирование ограничивается лишь знаниями и навыками программиста.

Имея достаточно навыков и умений по написанию программ, вы сможете создать бота практически любой сложности. Он будет выполнять любые действия, которые вы в него заложите.

Почему лучше уметь писать ботов самостоятельно?

По сути, вышеуказанной причины уже достаточно, чтобы начать написание ботов вручную. Но это не единственный плюс.

Во-вторых, некоторые из конструкторов могут быть платными, на что мы не всегда готовы выделить деньги. Для написания бота же, в крайнем случае, вам потребуется оплатить хостинг или сервер (60 – 150 рублей). Но чаще всего люди используют бесплатные облачные сервера (например, Heroku) и размещают там свои приложения.

Конечно, вы можете найти и бесплатные конструкторы, но, как правило, их функционал ограничен всего лишь несколькими функциями (возвращаемся к «во-первых»). И в большинстве ситуаций его недостаточно. И здесь вы вынуждены либо искать другой конструктор, который удовлетворял бы вашим потребностям (а он уже может быть платным), либо использовать не одного, а сразу несколько ботов, чтобы каждый из них выполнял свои действия. В первом случае найти подходящий конструктор крайне сложно, а во втором – использование нескольких ботов – не очень удобно.

В общем, вы сами для себя должны решить, что наиболее удобно именно для вас, исходя из ваших потребностей и функционала, который вы хотите видеть в роботе.

Языков программирования существует большое множество, и ботов для Telegram пробовали писать на многих из них. Но со временем люди выделили для себя наиболее эффективные и оптимальные варианты. Это три следующих языка:

  • Python;
  • PHP;
  • Java Script.

Каждый из них обладает своими преимуществами и недостатками. Давайте же выясним какими.

Первый – Python – самая быстрая разработка осуществляется именно с его помощью (среди трех указанных языков). Но скорость работы ниже, чем у php и js. Также для него необходимо найти python-хостинг для запуска (примерно от 100 рублей).

Второй – PHP – разработка не такая быстрая, как на python но зато скорость работы выше. Для работы подойдёт любой хостинг для сайтов (примерно от 60 рублей).

Третий – Java Script – процесс разработки сложнее, чем на двух предыдущих, но скорость работы до 100 раз выше. Для работы потребуется vds-сервер (примерно от 100 рублей).

Как видите, все они обладают своими плюсами и минусами. Далее мы поговорим о разработке на Python.

В сегодняшней статье мы попробуем с вами создать простенького бота для Telegram, написав его с помощью языка Python.

Прежде чем начинать разработку, нам необходимо зарегистрировать бота у @BotFather. Делается это следующим образом:

  1. Находим @BotFather в Телеграм и начинаем с ним разговор, нажав кнопку «START».
  2. Пишем команду «/newbot».
  3. Далее придумываем имя бота.
  4. А после придумываем его username, который должен заканчиваться на «bot».

После проделанных действий должно появиться сообщение с токеном. Его необходимо сохранить.

pyTelegramBotAPI – основная библиотека всех айпи

Для начала работы мы рекомендуем установить библиотеку pyTelegramBotAPI. Эта библиотека возьмет на себя все нюансы отправки и получения запросов и значительно упростит вашу работу.

Убедитесь, что у вас установлен Python. Мы рекомендуем использовать версию 3.х. Также стоит установить систему управления пакетами pip. Для версий Python 3.4 и выше она уже предусмотрена (для операционных систем MacOS и Linux тоже).

Если вы используете ОС Windows, тогда необходимо загрузить get-pip.py, открыть cmd, найти скачанные файлы в директории и выполнить следующее действие:

Затем, используя pip, установить пакет request:

Для проверки правильности установки пакетов выполните команду «python3». В появившемся окне введите «import telebot» и нажмите клавишу Enter. Ничего не должно произойти. Если это так, то все установилось правильно.

Начинаем кодировать бота на Python

Теперь можно переходить к кодингу. В качестве примера мы напишем бота, который будет дублировать наши сообщения. Вы же можете придумать что-то посложнее.

Первым делом создаем каталог с двумя файлами:

  • bot.py;
  • config.py.

Все переменные мы будем заносить в файл «config.py». В нем мы напишем следующее:

Данный токен мы ранее получили и сохранили у @BotFather.

Далее файл «config.py» можно закрыть и открываем «bot.py». Здесь мы зададим объект. Делается это следующим образом:

Объект задан. Но пока программа пассивна, она никак не реагирует на то, что ей пишут. Нам же нужно это исправить. Сделать это можно при помощи обработчика «handler», который можно использовать не только для обработки текста, но также медиа-файлов, команд и т.д.

Выглядит это так:

После мы должны задать бесконечный цикл, который будет получать новые запросы от серверов Telegram. Делаем это при помощи функции «polling».

При этом параметр «non_stop=True» не позволит боту прекратить свою работу, даже если будут возникать ошибки. Чаще всего ошибки возникают из-за долгого ответа на запросы от серверов Телеграм.

Результат – бот готов работать

В итоге мы получили следующее:

По сути это уже готовый бот, который будет отвечать нам. В ответ мы получим то, что написали сами. Естественно, этот бот сделан на скорую руку и в целях ознакомления с написанием кода. Вы же можете придумать что-то посерьезнее и посложнее.

В результате мы имеет рабочего робота, который дублирует все наши сообщения:

Теперь вы знаете, как написать бота на Python. На рисунке готовый бот повторяет сообщения.

Вы также можете заставить программу реагировать не только на сообщения, но и на определенные команды с помощью все того же handler:

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

При разработке бота для Телеграм люди часто сталкиваются с определенными проблемами и ошибками. Чтобы избежать их, следуйте нашим советам и рекомендациям:

  1. Используйте один из вышеупомянутых языков программирования. Да, вы можете использовать какой-либо другой язык, но при возникновении той или иной ошибки будет сложно найти ответ в интернете.
  2. Используйте веб хуки для автоматической выгрузки сообщений, установите их на нужный адрес и отловите выходной сигнал.
  3. Вместо того чтобы заказывать хостинги за деньги (пусть и небольшие) воспользуйтесь бесплатными облачными серверами. Их мощности вполне хватает для нормального функционирования бота.
  4. Периодически проверяйте работу программы, так как из-за задержек ответа со стороны серверов Телеграм могут возникать ошибки.
  5. При создании бота на Python лучше воспользоваться каким-нибудь реактором (например, tornado.web).

Пока на этом все. Будем надеяться, что вы столкнетесь с минимумом проблем на своем пути.

Сегодня мы с вами узнали, что такое написание ботов для Телеграм. Как видите, нам предложен большой выбор языков программирования, и в нашем праве выбрать наиболее удобный.

Естественно, если вы не имеете опыта работы с чем-то подобным, но вам срочно нужен робот, то стоит задуматься о том, чтобы обратиться за помощью к профессиональным разработчикам.

Оцените текст:

Это новый вид статьи, в котором мы не будем говорить про PHP, многим python превосходит php, а для начинающих он покажется проще. Данная статья будет содержать в себе следующие шаги:

Установка не занимает много времени и умений. Переходим на официальный сайт https://www.python.org/downloads/ и скачиваем установщик себе на ПК. Запускаем установщик, обязательно поставьте галочку возле надписи Add Python 3.7 to PATH, так у вас не возникнет проблем при работе с командной строкой Windows.

После установки запускаем командую строку:

И пишем команду:

Если Вы сделали все правильно, то увидите список команд и опций На этом установка Python успешно завершена. Переходим к установке IDE PyCharm

Переходим на сайт jetbrains.com/pycharm и скачиваем среду PyCharm Community, она бесплатная. После чего устаналвиваем и запускаем PyCharm

Забегая вперед, у меня по умолчанию в настройках программы стоял Python 2.7 Нам нужна последняя версия, открываем File -> Settings. -> Project interpreter и из выпадающего меню выбираем последнюю версию, или добавляем ее туда нажав на Show All… Теперь можно создавать новый проект.

Если в конце видите такой текст, библиотека успешно установлена, можно импортировать ее в проект и писать первый код:

Это код из примера, благодаря нему мы убедимся что сделали все правильно. Вставить его нужно в файл new.py предварительно удалив все оттуда, что мы написали ранее.

Для начала настроим наше сообщество. Создаем ключ Копируем ключ и вставляем его в наш скрипт: Вместо ‘your_group_token‘ указываем ключ сообщества Вместо ‘your_group_id‘ указываем ID нашего сообщества

Читайте также:  Функция месяц в эксель

Теперь переходим во вкладку Long Poll APIи включаем его Далее, обязательно включаем тип событий, это частая ошибка при создании ботов, забыв включить события, бот не будет работать! Выбираем все что есть.

Вернемся к нашему коду. Давайте запустим наш скрипт и проверим как он будем обрабатывать события, запускаем скрипт: Давайте покинем сообщество и снова вступим в него: В консоли мы сразу увидели последние события. Немного добавим строк в наш код, и научим отвечать наше сообщество сообщением в ЛС на одно из событий:

Как узнать названия других событий? Они будут выводится в консоли, так как в коде используется:

Тут мы получили 2 события:

Документация и больше примеров можно посмотреть на GitHub . Если Вам интересен этот язык и вы хотите видеть больше статей по Python, пишите в комментарии об этом!

Читайте также:  Телефон xiaomi как открыть заднюю крышку

Бот для VK на Python

Пример простого бота для ВКонтакте на Python 3. Обработка событий с использованием Bots Long Poll API, голосовые сообщения генерируются с помощью Яндекс.SpeechKit.

Сообщество бота: https://vk.com/vkpython. Бот отправляет в ответ на любое сообщение картинку и голосовое сообщение с именем собеседника.

Подготовка к использованию

pip3 install vk requests

Получение ключа доступа VK API

Ключ доступа к VK API можно получить в настройках сообщества, там же нужно включить Long Poll API, как минимум для доступа к сообщениям и управления сообществом.

Сделать это можно перейдя в “Управление сообществом” -> “Работа с API” -> “Ключи доступа”, “Long Poll API”.

Получение ключа доступа Яндекс.SpeechKit

Переходим в кабинет разработчика, нажимаем “Получить ключ” и выбираем “SpeechKit Cloud”.

Похоже, сейчас SpeeckKit стал полностью платным. Если вы нашли способ получения ключа для личного некоммерческого использования, сообщите об этом.

Сейчас боты стали обыденностью и находятся на каждом шагу, но если тебе нужен свой бот в социальной сети вконтакте, то это легко реализовать.

Ну прям совсем для новичков

Как оно работает?

Long Polling — это технология, которая позволяет получать данные о новых событиях с помощью «длинных запросов». Сервер получает запрос, но отправляет ответ на него не сразу, а лишь тогда, когда произойдёт какое-либо событие (например, придёт новое сообщение), либо истечёт заданное время ожидания.

Говоря русским языком, мы отправляем на сервер запрос, а он в свою очередь тыкает вконтакте если там произойдёт что либо, например, нам придёт сообщение он бежит и говорит об этом нам. От этого и будем плясать.

Техническая реализация

Для начала нам нужно доказать вконтакту что мы — это мы, а не кто-либо ещё. Делается это очень просто.

Читайте также:  Юсб провод для айфона

Замечание, ребята из ВК рекомендуют использовать в качестве логина номер телефона т.к. иначе можно нарваться на проверку антиробот, ту самую где тебя просят ввести недостающие цифры из номера телефона.

Если бот будет сидеть в группе то авторизация выглядит по другому.

Теперь вызовем longpool.

В сообщениях может быть не только заданный вами текст. Например:

А ещё можно прикреплять картинки.

Можно придумать ещё много всего интересного, но тут подумайте сами, а я лишь скажу что: ссылки можно делить на части. Например:

и никто не запретил нам получать ответ от пользователя на примере Википедии:

Ссылки на примеры и документацию

На этом я с вами попрощаюсь. Хорошего кодинга.

Оцените статью
Рейтинг автора
4,8
Материал подготовил
Максим Коновалов
Наш эксперт
Написано статей
127
А как считаете Вы?
Напишите в комментариях, что вы думаете – согласны
ли со статьей или есть что добавить?
Добавить комментарий