Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > Python
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.01.2021, 20:08   #1
Ilya221122
 
Регистрация: 09.01.2021
Сообщений: 6
По умолчанию Зациклился код

Привет,
я создаю бота для беседы в вк, и сначала пытался сделать ответ на сообщение.
Код:
import vk_api
from vk_api.longpoll import VkLongPoll, VkEventType

vk_session = vk_api.VkApi(token = 'Мой токен')
session_api = vk_session.get_api()
longpoll = VkLongPoll(vk_session)

def sender(id, text):
	vk_session.method('messages.send', {'user_id' : id, 'message' : text, 'random_id' : 0})

for event in longpoll.listen():
	if event.type == VkEventType.MESSAGE_NEW:
			if event.to_me:
				msg = event.text.lower()
				id = event.user_id

			if msg == 'привет':
				sender(id, 'и тебе привет')
При отправке сообщения боту "привет" в ответ я получаю "и тебе привет" бесконечное количество раз.
Как это исправить?
Ilya221122 вне форума Ответить с цитированием
Старый 09.01.2021, 20:11   #2
Ilya221122
 
Регистрация: 09.01.2021
Сообщений: 6
По умолчанию 1

вот что получается
Изображения
Тип файла: png Безымянный2.png (14.7 Кб, 13 просмотров)
Ilya221122 вне форума Ответить с цитированием
Старый 09.01.2021, 21:47   #3
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,304
По умолчанию

А если просто очистить переменную:
Код:
if msg == 'привет':
    sender(id, 'и тебе привет')
    msg = ''
PS: Я такими штуками не занимался, но по логике этот код
Код:
if event.to_me:
    msg = event.text.lower()
   id = event.user_id
может уже не работать, а вот следующий будет срабатывать, так как msg не меняется.
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Есть код на Python, нужно построить диаграмму взаимодействия, код в теме aliceliddell Помощь студентам 0 22.05.2018 14:28
пытаюсь переписать код из С++ в питон. Код внутри. Верно ли я делаю? clav9nski Python 2 08.10.2017 21:34
Программно изменить код страницы(как в Опере через исходный код) igrok111 Работа с сетью в Delphi 7 20.04.2013 23:46
Доп.код,обратный код,прямой код вычисления Lukas077 Помощь студентам 0 20.03.2011 12:07
Зациклился ScreenShot Streetmagic Мультимедиа в Delphi 1 10.04.2010 17:42