мета-данные страницы
Загрузка не удалась. Возможно, проблемы с правами доступа?
Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
| python:week23 [21/01/2021 12:37] – [Пример кода бота] Admin Adminovich | python:week23 [15/02/2021 03:09] (текущий) – [Пример кода бота] Admin Adminovich | ||
|---|---|---|---|
| Строка 9: | Строка 9: | ||
| - В разделе управления зайдите в {{: | - В разделе управления зайдите в {{: | ||
| - И включите все {{: | - И включите все {{: | ||
| - | - В разделе Настройки - Работа с API переключите Long Poll API с выключен на включен: | + | - В разделе Настройки - Работа с API переключите Long Poll API с выключен на включен. Проверьте, |
| - В вкладке Long Poll API включите все {{: | - В вкладке Long Poll API включите все {{: | ||
| Строка 44: | Строка 44: | ||
| random_id=get_random_id(), | random_id=get_random_id(), | ||
| message=" | message=" | ||
| + | else: | ||
| + | vk.messages.send( | ||
| + | user_id=event.obj.message[" | ||
| + | random_id=get_random_id(), | ||
| + | message=user_sent) # иначе вернем сообщение назад | ||
| + | </ | ||
| + | |||
| + | |||
| + | ====== Пример кода бота с загрузкой сообщений ====== | ||
| + | |||
| + | <code python> | ||
| + | |||
| + | import vk_api # подключаем апи бота | ||
| + | from vk_api.bot_longpoll import VkBotLongPoll, | ||
| + | from vk_api.utils import get_random_id | ||
| + | |||
| + | token = " | ||
| + | |||
| + | # подключаемся к сообществу | ||
| + | vk_session = vk_api.VkApi(token=token) | ||
| + | vk = vk_session.get_api() | ||
| + | |||
| + | |||
| + | |||
| + | # создаем функцию отправки сообщения | ||
| + | def post_image(api, | ||
| + | upload_server = api.photos.getMessagesUploadServer(peer_id=user_id) | ||
| + | upload_url = upload_server[" | ||
| + | files = {' | ||
| + | response = requests.post(upload_url, | ||
| + | result = json.loads(response.text) | ||
| + | upload_result = api.photos.saveMessagesPhoto(server=result[" | ||
| + | | ||
| + | | ||
| + | return upload_result | ||
| + | |||
| + | # включаем бота в режим приема сообщений | ||
| + | longpoll = VkBotLongPoll(vk_session, | ||
| + | |||
| + | # Обрабтка сообщений | ||
| + | for event in longpoll.listen(): | ||
| + | if event.type == VkBotEventType.MESSAGE_NEW: | ||
| + | if event.obj.message[" | ||
| + | if event.from_user: | ||
| + | user_sent = event.obj.message[" | ||
| + | if user_sent == " | ||
| + | upload_result = post_image(vk, | ||
| + | vk.messages.send( | ||
| + | user_id=event.obj.message[" | ||
| + | random_id=get_random_id(), | ||
| + | message=" | ||
| else: | else: | ||
| vk.messages.send( | vk.messages.send( | ||