Здравствуйте, так как программирование не совсем моя специфика есть вопрос по боту для сообщений от группы вк.
Бот полностью настроен мною и работает(можете использовать его в своих целях.Только подставьте токен ключ вашей группы) но есть проблема сессии vk api. Приходится запускать бота каждый день снова. Подскажите как можно автоматизировать данный процесс. Например переподключение к сессии через определенное время в самом коде или создание отдельного скрипта.
Запуск бота происходит через бесплатный сервис https://www.pythonanywhere.com/
Файл залит на сервер и запуск происходит через консоль с помощью команд
pip3.8 install --user vk_api
python3 any.py
Вот код самого бота файла питона(any.py)
Ниже представлены виды запускаемых консолей и файловой системы сервера для решения этих задач.
Пытался сделать что то вроде перезапуска скрипта питона через sh скрипт, но у меня ничего особо не вышло. Уверен, что знающие смогут подсказать как можно автоматизировать этот процесс.
Бот полностью настроен мною и работает(можете использовать его в своих целях.Только подставьте токен ключ вашей группы) но есть проблема сессии vk api. Приходится запускать бота каждый день снова. Подскажите как можно автоматизировать данный процесс. Например переподключение к сессии через определенное время в самом коде или создание отдельного скрипта.
Запуск бота происходит через бесплатный сервис https://www.pythonanywhere.com/
Файл залит на сервер и запуск происходит через консоль с помощью команд
pip3.8 install --user vk_api
python3 any.py
Вот код самого бота файла питона(any.py)
Код:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from vk_api.longpoll import VkLongPoll, VkEventType
import vk_api
from datetime import datetime
import random
import time
token = "ВВЕДИТЕ СВОЙ ТОКЕН API"
vk_session = vk_api.VkApi(token=token)
response=True
str(response)
session_api = vk_session.get_api()
longpoll = VkLongPoll(vk_session)
for event in longpoll.listen():
if event.type == VkEventType.MESSAGE_NEW:
response = event.text.lower()
response = event.text.casefold()
if event.from_user and not (event.from_me):
response = str(response)
if response == "начать":
vk_session.method('messages.send', {'user_id': event.user_id, 'message': 'Здравствуйте! Вас приветствует электронный помощник Shredded Body', 'random_id': 0})
time.sleep(1)
vk_session.method('messages.send', {'user_id': event.user_id, 'message': 'Если у вас имеются вопросы, в скором времени мы на них ответим. Пока вы ожидаете, я помогу вам ускорить этот процесс и получить ответ гораздо быстрее!', 'random_id': 0})
time.sleep(3)
vk_session.method('messages.send', {'user_id': event.user_id,'message': 'Если Ваш ответ «Да», выберите один из вариантов цифрой и отправьте в сообщения сообщества. \n 1) Мне необходимо подобрать грамотный план питания. \n 2) Мне нужна программа тренировок. \n 3) У меня имеются вопросы к личному тренеру. \n 4) Меня интересует реклама в сообществе. \n 5) Хочу, чтобы вы опубликовали мои фото или статью. \n 6) Мне очень нравится паблик, и я хочу поучаствовать в его развитии.','random_id': 0})
elif response == "1":
vk_session.method('messages.send', {'user_id': event.user_id, 'message': 'Для начала вам необходимо заполнить нашу анкету. https://vk.com/sushitelo?w=app5619682_-29551471', 'random_id': 0})
elif response == "2":
vk_session.method('messages.send', {'user_id': event.user_id, 'message': 'Для начала вам необходимо заполнить нашу анкету. https://vk.com/sushitelo?w=app5619682_-29551471', 'random_id': 0})
elif response == "3":
vk_session.method('messages.send', {'user_id': event.user_id, 'message': 'ответ3', 'random_id': 0})
elif response == "4":
vk_session.method('messages.send', {'user_id': event.user_id, 'message': 'ответ4', 'random_id': 0})
elif response == "5":
vk_session.method('messages.send', {'user_id': event.user_id, 'message': 'ответ5', 'random_id': 0})
elif response == "6":
vk_session.method('messages.send', {'user_id': event.user_id, 'message': 'ответ6', 'random_id': 0})
Ниже представлены виды запускаемых консолей и файловой системы сервера для решения этих задач.
Пытался сделать что то вроде перезапуска скрипта питона через sh скрипт, но у меня ничего особо не вышло. Уверен, что знающие смогут подсказать как можно автоматизировать этот процесс.