from urllib import request from time import sleep from random import randint import json import vk_api main_token = 'token' # токен, с которого будет осуществляться получение ID пользователей по ссылкам tokens = [] api = vk_api.VkApi(token=main_token, api_version=5.131).get_api() def get_user_id(screen): if screen.isnumeric(): return screen screen = screen.replace('https://', '').replace('http://', '').replace('vk.com/', '').replace('m.vk.com/', '') if screen.startswith('[id'): return screen[3:screen.find('|')] resp = api.utils.resolveScreenName(screen_name=screen) if resp == []: raise Exception('Неверная ссылка') if resp['type'] == 'user': return resp['object_id'] else: return 0-resp['object_id'] gift = input('ID подарка: ') print('Всего '+str(len(tokens)*int(input('Количество подарков на 1 акк: ')))+' подарков') for token in tokens: accinfo = json.loads(request.urlopen('https://api.vk.com/method/account.getProfileInfo?access_token='+token+'&v=5.131').read().decode('utf-8')) if not 'response' in accinfo: print('Похоже, токен под номером '+str(tokens.index(token))+' невалидный') break else: print('Дарю подарки с аккаунта '+accinfo['response']['first_name']+' '+accinfo['response']['last_name']) while True: request.urlopen('https://api.vk.com/method/account.setOnline?voip=1&access_token='+token+'&v=5.131') try: screen = get_user_id(input('Ссылка на профиль пользователя/ID?\n')) except: print('Неверная ссылка') continue giftresp = json.loads(request.urlopen('https://api.vk.com/method/gifts.send?user_ids='+str(screen)+'&gift_id='+gift+'&privacy=1&guid=1'+str(randint(1,99999))+'&access_token='+token+'&v=5.131').read().decode('utf-8')) if 'error' in giftresp: if giftresp['error']['error_code'] in [17, 1190]: break else: print('Ошибка: '+json.dumps(giftresp)) break else: print(giftresp) sleep(5) Python from urllib import request from time import sleep from random import randint import json import vk_api main_token = 'token' # токен, с которого будет осуществляться получение ID пользователей по ссылкам tokens = [] api = vk_api.VkApi(token=main_token, api_version=5.131).get_api() def get_user_id(screen): if screen.isnumeric(): return screen screen = screen.replace('https://', '').replace('http://', '').replace('vk.com/', '').replace('m.vk.com/', '') if screen.startswith('[id'): return screen[3:screen.find('|')] resp = api.utils.resolveScreenName(screen_name=screen) if resp == []: raise Exception('Неверная ссылка') if resp['type'] == 'user': return resp['object_id'] else: return 0-resp['object_id'] gift = input('ID подарка: ') print('Всего '+str(len(tokens)*int(input('Количество подарков на 1 акк: ')))+' подарков') for token in tokens: accinfo = json.loads(request.urlopen('https://api.vk.com/method/account.getProfileInfo?access_token='+token+'&v=5.131').read().decode('utf-8')) if not 'response' in accinfo: print('Похоже, токен под номером '+str(tokens.index(token))+' невалидный') break else: print('Дарю подарки с аккаунта '+accinfo['response']['first_name']+' '+accinfo['response']['last_name']) while True: request.urlopen('https://api.vk.com/method/account.setOnline?voip=1&access_token='+token+'&v=5.131') try: screen = get_user_id(input('Ссылка на профиль пользователя/ID?\n')) except: print('Неверная ссылка') continue giftresp = json.loads(request.urlopen('https://api.vk.com/method/gifts.send?user_ids='+str(screen)+'&gift_id='+gift+'&privacy=1&guid=1'+str(randint(1,99999))+'&access_token='+token+'&v=5.131').read().decode('utf-8')) if 'error' in giftresp: if giftresp['error']['error_code'] in [17, 1190]: break else: print('Ошибка: '+json.dumps(giftresp)) break else: print(giftresp) sleep(5) Предназначение: Получаем автореги с раздач, вставляем их токены в список tokens и удобно раздаем бесплатные подарки ВК, просто вводя ссылку или айди пользователя в консоль Использование: в main_token вставьте токен, с которого будет осуществляться получение ID пользователей по ссылкам, tokens - список токенов, полученных от ВК для андроид Другие скрипты на GitHub
MALWARE а лучше так: код from urllib import request from time import sleep from random import randint import json import vk_api main_token = 'token' # токен, с которого будет осуществляться получение ID пользователей по ссылкам api = vk_api.VkApi(token=main_token, api_version=5.131).get_api() def useridparser(screen): if screen.isdecimal() and not api.utils.resolveScreenName(screen_name='id'+screen) == []: return screen elif screen.startswith('https://vk.com/'): resp = api.utils.resolveScreenName(screen_name=screen[15:]) if not resp == []: if resp['type'] == 'user': return resp['object_id'] else: return 0-resp['object_id'] elif screen.startswith('vk.com/'): resp = api.utils.resolveScreenName(screen_name=screen[7:]) if not resp == []: if resp['type'] == 'user': return resp['object_id'] else: return 0-resp['object_id'] elif screen.startswith('https://m.vk.com/'): resp = api.utils.resolveScreenName(screen_name=screen[17:]) if not resp == []: if resp['type'] == 'user': return resp['object_id'] else: return 0-resp['object_id'] else: resp = api.utils.resolveScreenName(screen_name=screen) if not resp == []: if resp['type'] == 'user': return resp['object_id'] else: return 0-resp['object_id'] else: return 'invalid' gift = input('ID подарка: ') print('Всего '+str(len(tokens)*int(input('Количество подарков на 1 акк: ')))+' подарков') with open('tokens.txt', 'r') as f: tokens = f.read().split('\n') for token in tokens: accinfo = json.loads(request.urlopen('https://api.vk.com/method/account.getProfileInfo?access_token='+token+'&v=5.131').read().decode('utf-8')) if not 'response' in accinfo: print('Похоже, токен под номером '+str(tokens.index(token))+' невалидный') break else: print('Дарю подарки с аккаунта '+accinfo['response']['first_name']+' '+accinfo['response']['last_name']) while True: request.urlopen('https://api.vk.com/method/account.setOnline?voip=1&access_token='+token+'&v=5.131') screen = useridparser(input('Ссылка на профиль пользователя/ID?\nВалидными будут такие ссылки: https://vk.com/durov, vk.com/durov, https://m.vk.com/durov, durov, 1\n')) if screen == 'invalid': print('Неверная ссылка') continue giftresp = json.loads(request.urlopen('https://api.vk.com/method/gifts.send?user_ids='+str(screen)+'&gift_id='+gift+'&privacy=1&guid=1'+str(randint(1,99999))+'&access_token='+token+'&v=5.131').read().decode('utf-8')) if 'error' in giftresp: if giftresp['error']['error_code'] in [17, 1190]: break else: print('Ошибка: '+json.dumps(giftresp)) break else: print(giftresp) sleep(5) Python from urllib import request from time import sleep from random import randint import json import vk_api main_token = 'token' # токен, с которого будет осуществляться получение ID пользователей по ссылкам api = vk_api.VkApi(token=main_token, api_version=5.131).get_api() def useridparser(screen): if screen.isdecimal() and not api.utils.resolveScreenName(screen_name='id'+screen) == []: return screen elif screen.startswith('https://vk.com/'): resp = api.utils.resolveScreenName(screen_name=screen[15:]) if not resp == []: if resp['type'] == 'user': return resp['object_id'] else: return 0-resp['object_id'] elif screen.startswith('vk.com/'): resp = api.utils.resolveScreenName(screen_name=screen[7:]) if not resp == []: if resp['type'] == 'user': return resp['object_id'] else: return 0-resp['object_id'] elif screen.startswith('https://m.vk.com/'): resp = api.utils.resolveScreenName(screen_name=screen[17:]) if not resp == []: if resp['type'] == 'user': return resp['object_id'] else: return 0-resp['object_id'] else: resp = api.utils.resolveScreenName(screen_name=screen) if not resp == []: if resp['type'] == 'user': return resp['object_id'] else: return 0-resp['object_id'] else: return 'invalid' gift = input('ID подарка: ') print('Всего '+str(len(tokens)*int(input('Количество подарков на 1 акк: ')))+' подарков') with open('tokens.txt', 'r') as f: tokens = f.read().split('\n') for token in tokens: accinfo = json.loads(request.urlopen('https://api.vk.com/method/account.getProfileInfo?access_token='+token+'&v=5.131').read().decode('utf-8')) if not 'response' in accinfo: print('Похоже, токен под номером '+str(tokens.index(token))+' невалидный') break else: print('Дарю подарки с аккаунта '+accinfo['response']['first_name']+' '+accinfo['response']['last_name']) while True: request.urlopen('https://api.vk.com/method/account.setOnline?voip=1&access_token='+token+'&v=5.131') screen = useridparser(input('Ссылка на профиль пользователя/ID?\nВалидными будут такие ссылки: https://vk.com/durov, vk.com/durov, https://m.vk.com/durov, durov, 1\n')) if screen == 'invalid': print('Неверная ссылка') continue giftresp = json.loads(request.urlopen('https://api.vk.com/method/gifts.send?user_ids='+str(screen)+'&gift_id='+gift+'&privacy=1&guid=1'+str(randint(1,99999))+'&access_token='+token+'&v=5.131').read().decode('utf-8')) if 'error' in giftresp: if giftresp['error']['error_code'] in [17, 1190]: break else: print('Ошибка: '+json.dumps(giftresp)) break else: print(giftresp) sleep(5)
id601790852, только этот принт нужно загнать под открытие файла иначе будет ошибка переменной tokens)
Сходу у меня ничего не запустилось. Вот ряд причин с которыми вы можете как и я столкнуться: 1) main_token = 'token' вместо token нужно вставить токен и кавычки оставить на месте 2) tokens = [] сюда токен или токены нужно вставлять тоже с одинарными кавычками: tokens = ['tokens1', 'tokens2'] 3) Запускать нужно не напрямую питон, а через cmd. То есть сохранить код в файле с расширением .py а потом в cmd введя команду "python ххх" заместо ххх перетащите файл с кодом прямо в cmd и там окажется путь к этому файлу. 4) Если вылезает такая ошибка в cmd, то нужно в cmd вставить команду "pip install vk_api" и потом она не будет появляться. 5) Ещё нужно чтобы при установке питона была поставлена галочка "add to path". п.с. в 41 строке параметр отвечает кто будет видеть подарок: 0- все, 1-владелиц страницы Спасибо автору за помощь всех этих тонкостей)