скрипт для вк [вечное печатание]
  • Тема была создана
  • 306
hikkiray
  • 38
  • 58
Hello world
Суть работы скрипта:
1.Вставляем наш токен vk (получить можно тут ТЫК )
2.Вставляем страницу пользователя
3.Включаем вечное печатание

Для работы понадобится библиотека VK_API

Python:
pip install vk_api

Python:
import vk_api
import time
import re
import threading
import os

TOKEN_FILE = 'vk_token.txt'

class TypingSimulator:
    def __init__(self, vk_session):
        self.vk_session = vk_session
        self.user_ids = []
        self.running = False

    def set_typing(self, typing=True):
        while self.running:
            for user_id in self.user_ids:
                self.vk_session.method('messages.setActivity', {'user_id': user_id, 'type': 'typing' if typing else 'audiomessage'})
            time.sleep(5)

    def start_typing(self):
        self.running = True
        self.thread = threading.Thread(target=self.set_typing)
        self.thread.start()

    def stop_typing(self):
        self.running = False
        self.thread.join()

def extract_user_ids(vk_session, users_input):
    user_ids = []
    for user in users_input.split(','):
        user = user.strip()
        if user.isdigit():
            user_ids.append(user)
        else:
            match = re.search(r'vk.com/(.+)', user)
            if match:
                user_name = match.group(1)
                response = vk_session.method('users.get', {'user_ids': user_name})
                if response:
                    user_ids.append(str(response[0]['id']))
    return user_ids

def save_token(token):
    with open(TOKEN_FILE, 'w') as file:
        file.write(token)

def load_token():
    if os.path.exists(TOKEN_FILE):
        with open(TOKEN_FILE, 'r') as file:
            return file.read().strip()
    return None

def main():
    token = load_token()
    if token:
        use_saved = input("Использовать сохраненный токен? (да/нет): ")
        if use_saved.lower() != 'да':
            token = None

    if not token:
        token = input("Введите ваш токен VK: ")
        save = input("Сохранить токен для будущего использования? (да/нет): ")
        if save.lower() == 'да':
            save_token(token)

    vk_session = vk_api.VkApi(token=token)
    simulator = TypingSimulator(vk_session)

    while True:
        print("\n1. Введите username или id пользователя(ей)")
        print("2. Включить/выключить печатание")
        print("3. Выход из программы")
        choice = input("Выберите опцию: ")

        if choice == '1':
            users_input = input("Введите username или id пользователя(ей), через запятую: ")
            simulator.user_ids = extract_user_ids(vk_session, users_input)
            print("Выбранные пользователи:", simulator.user_ids)

        elif choice == '2':
            if not simulator.user_ids:
                print("Сначала добавьте пользователя(ей)")
                continue
            action = input("Введите 'start' для начала или 'stop' для остановки печатания: ")
            if action == 'start':
                simulator.start_typing()
                print("Печаталка активирована.")
            elif action == 'stop':
                simulator.stop_typing()
                print("Печаталка деактевирована.")

        elif choice == '3':
            if simulator.running:
                simulator.stop_typing()
            break

if __name__ == '__main__':
    main()
В этой теме нет ответов
В данный момент, эту тему никто не просматривает

Посмотрели тему 0

Назад
Сверху