рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ Vkontakte рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдлрд╝реЛрдЯреЛ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ

VK рдПрдкреАрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ Vkontakte рдХреА рдкреНрд░реЛрдлрд╛рдЗрд▓ рдлреЛрдЯреЛ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдбред рдХреИрдкреНрдЪрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ рдФрд░ рдлреЛрдЯреЛ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд░ рдкрд░ рдХреЛрдб рдЕрдкрд▓реЛрдб рдХрд░реЗрдВред

рдЫрд╡рд┐

рдЖрд╡рд╢реНрдпрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп


рдкрд╛рдпрдерди рдХреЗ рд▓рд┐рдП рд╡реАрдХреЗ рдПрдкреАрдЖрдИ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП vk_api рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ: рдкрд╛рдЗрдк рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ vk_api

Vk_api рдХрд╛рд░реНрдп рдЙрджрд╛рд╣рд░рдг
import vk_api # ( )      vk_session = vk_api.VkApi('login', 'password') vk_session.auth() vk = vk_session.get_api() #       'Hello world!' vk.wall.post(message='Hello world!') 


рдЖрд╡рд╢реНрдпрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рдЖрдпрд╛рдд рдХрд░реЗрдВ

 import os import time import random import requests import vk_api from vk_api.utils import get_random_id from urllib import urlretrieve 

рдкреНрд░рд╛рдзрд┐рдХрд░рдг


рдПрдкреАрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡реАрдХреЗ рдореЗрдВ рдкреНрд░рд╛рдзрд┐рдХрд░рдг

 vk_session = vk_api.VkApi('+7999132****', '*********') vk_session.auth() vk = vk_session.get_api() 

рдЫрд╡рд┐рдпрд╛рдБ рдЕрдкрд▓реЛрдб рдХрд░реЗрдВ


VKontakte рд╕рд░реНрд╡рд░ рдкрд░ рдЪрд┐рддреНрд░ рдЕрдкрд▓реЛрдб рдХрд░реЗрдВред
photos.getOwnerPhotoUploadServer () рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдкреЗрдЬ рдкрд░ рдореБрдЦреНрдп рдлреЛрдЯреЛ рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд░ рдХрд╛ рдкрддрд╛ рджреЗрддрд╛ рд╣реИред

 url = vk.photos.getOwnerPhotoUploadServer()['upload_url'] 

рдЫрд╡рд┐ рдХреЛ VKontakte рд╕рд░реНрд╡рд░ рдкрд░ рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдлрд╝реЛрдЯреЛ рдХреЛ рдлрд╝реАрд▓реНрдб рдХреЗ рд╕рд╛рде POST рдЕрдиреБрд░реЛрдз рдЬрдирд░реЗрдЯ рдХрд░рдХреЗ рдкрд┐рдЫрд▓реЗ рдкреИрд░рд╛рдЧреНрд░рд╛рдл рдореЗрдВ рдкреНрд░рд╛рдкреНрдд upload_url рдкрддреЗ рдкрд░ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

 #    images images = os.listdir("images") photo = [] for image in images: request = requests.post(url, files={'photo': open('images/'+image, 'rb')}).json() photo.append(request['photo']) 

рд╕рд░реНрд╡рд░ рдФрд░ рд╣реИрд╢ рдорд╛рди рд╕рд╣реЗрдЬреЗрдВред рдЖрдкрдХреЛ рдЕрдкрдиреА рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдлрд╝реЛрдЯреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдирдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред

 server = request['server'] hash = request['hash'] 

рдкреНрд░реЛрдлрд╛рдЗрд▓ рдлреЛрдЯреЛ рдЕрдкрдбреЗрдЯ


photos.saveOwnerPhoto () рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдлрд╝реЛрдЯреЛ рд╕рд╣реЗрдЬрддрд╛ рд╣реИред

 #       x = random.randint(0, len(photo)-1) vk.photos.saveOwnerPhoto(server = server, hash = hash, photo = photo[x]) 

рдлреЛрдЯреЛ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рджреАрд╡рд╛рд░ рдХреЗ рд╕рд╛рде рдЗрд╕ рддрд╕реНрд╡реАрд░ рдХреЗ рд╕рд╛рде рдПрдХ рдкреЛрд╕реНрдЯ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдЗрди рдкреЛрд╕реНрдЯ рдХреЛ рдирд╣реАрдВ рд╣рдЯрд╛рддреЗ рд╣реИрдВ, рддреЛ рджреЛрд╕реНрддреЛрдВ рдлрд╝реАрдб рдЖрдкрдХреЗ рдЕрд╡рддрд╛рд░ рдЕрдкрдбреЗрдЯ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреЛрд╕реНрдЯ рд╕реЗ рднрд░рд╛ рд╣реЛрдЧрд╛ред

 posts = vk.wall.get() post_id = posts["items"][0]["id"] vk.wall.delete(post_id = post_id) 

рдпрджрд┐ рд╣рдо рдХреЛрдб рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рддреЛ рд╣рдорд╛рд░реЗ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдХрд╛ рдлреЛрдЯреЛ рдЕрдкрдбреЗрдЯ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред
рд╕реНрд╡рдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП, рдмрд╕ рдПрдХ рдЕрдВрддрд╣реАрди рд▓реВрдк рдЬреЛрдбрд╝реЗрдВ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдлреЛрдЯреЛ рдЕрдкрдбреЗрдЯ рдХреЗ рдмрд╛рдж рдПрдХ рдорд┐рдирдЯ рдХреА рджреЗрд░реА рдХрд░реЗрдВред

 y = 0 while(True): x = random.randint(0, len(photo)-1) while(x == y): x = random.randint(0, len(photo)-1) y = x #x  y   ,      2   vk.photos.saveOwnerPhoto(server = server, hash = hash, photo = photo[x]) posts = vk.wall.get() post_id = posts["items"][0]["id"] vk.wall.delete(post_id = post_id) #   photos = vk.photos.getAll() if (photos['count']>1): photo_id = photos["items"][1]["id"] vk.photos.delete(photo_id = photo_id) time.sleep(60) # 60 . 

рдкреВрд░реНрдг рдХреЛрдб
 import os import time import random import requests import vk_api from vk_api.utils import get_random_id from urllib import urlretrieve vk_session = vk_api.VkApi('+7999132****', '***********') vk_session.auth() vk = vk_session.get_api() images = os.listdir("images") url = vk.photos.getOwnerPhotoUploadServer()['upload_url'] photo = [] for image in images: request = requests.post(url, files={'photo': open('images/'+image, 'rb')}).json() photo.append(request['photo']) server = request['server'] hash = request['hash'] y = 0 while(True): x = random.randint(0, len(photo)-1) while(x == y): x = random.randint(0, len(photo)-1) y = x vk.photos.saveOwnerPhoto(server = server, hash = hash, photo = photo[x]) posts = vk.wall.get() post_id = posts["items"][0]["id"] vk.wall.delete(post_id = post_id) photos = vk.photos.getAll() if (photos['count']>1): photo_id = photos["items"][1]["id"] vk.photos.delete(photo_id = photo_id) time.sleep(60) 


рд▓реЗрдХрд┐рди рдХреБрдЫ рджрд░реНрдЬрди рдкреНрд░реЛрдлрд╛рдЗрд▓ рдлреЛрдЯреЛ рдЕрдкрдбреЗрдЯ рдХреЗ рдмрд╛рдж, рдПрдХ рддреНрд░реБрдЯрд┐ рд╣реЛрдЧреА
рдХреИрдкреНрдЪрд╛: рдХреИрдкреНрдЪрд╛ рдХреА рдЬрд░реВрд░рдд

рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рд╡реАрдХреЗ рдПрдкреАрдЖрдИ рдореЗрдВ рдХреИрдкреНрдЪрд╛ рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдХрд╛рдо рдХрд┐рдпрд╛ рдЬрд╛рдПред

рдХреИрдкреНрдЪрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВ


Vk_api.VkApi () рд╡рд┐рдзрд┐ рдиреЗ рдкрд╣рд▓реЗ рд╣реА рдХреИрдкреНрдЪрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рд░реНрдп рдХреЛ рд▓рд╛рдЧреВ рдХрд░ рджрд┐рдпрд╛ рд╣реИред рд▓реЙрдЧрд┐рди рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХреИрдкреНрдЪрд╛ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдлрд╝рдВрдХреНрд╢рди рдХреИрдкреНрдЪрд╛_рд╣реИрдВрдбрд▓рд░ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред

Vk_session рдмрджрд▓реЗрдВ

 vk_session = vk_api.VkApi('+7999132****', '**********', captcha_handler=captcha_handler) 

рд╣рдо рдХреИрдкреНрдЪрд╛_рд╣реИрдВрдбрд▓рд░ (рдХреИрдкреНрдЪрд╛) рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рдЬреЛ рдХреИрдкреНрдЪрд╛ рдПрдбреНрд░реЗрд╕ рд▓реЗрддрд╛ рд╣реИ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдХреИрдкреНрдЪрд╛ рдЗрдореЗрдЬ рднреЗрдЬрддрд╛ рд╣реИ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реЗ рдХреИрдкреНрдЪрд╛ рдХрд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░рддрд╛ рд╣реИред

 def captcha_handler(captcha): #   captcha_url = captcha.get_url() #     urlretrieve(captcha_url, "captcha.jpg") #  (send_captcha() . ) key = send_captcha(captcha_url) #  ()  return captcha.try_again(key) 

рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдХреИрдкреНрдЪрд╛ рдЫрд╡рд┐ рдХреЗ рд╕рд╛рде рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рдХрд╛ рдХрд╛рд░реНрдпред

рд╕рдВрджреЗрд╢ рд╡рд┐рдзрд┐рдпрд╛рдВ рд╕рд░реНрд╡рд░ рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рд╕реБрд▓рдн рдирд╣реАрдВ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдПрдХ рд╕рдореВрд╣ рдмрдирд╛рдиреЗ рдФрд░ рдЯреЛрдХрди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

  1. рдПрдХ рд╕рдореВрд╣ / рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдкреГрд╖реНрда рдмрдирд╛рдПрдБ
  2. рдкреНрд░рдмрдВрдзрди => рдПрдкреАрдЖрдИ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВ => рдПрдХ рдХреБрдВрдЬреА рдмрдирд╛рдПрдВ
  3. рдЪреБрдиреЗрдВ:
    • рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╕рд╛рдореБрджрд╛рдпрд┐рдХ рд╕рдВрджреЗрд╢реЛрдВ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВ
    • рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╕рд╛рдореБрджрд╛рдпрд┐рдХ рдлрд╝реЛрдЯреЛ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рджреЗрдВ
  4. рдХреБрдВрдЬреА рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдПрдБ
    рдЖрдкрдХреЛ рд╕рдореВрд╣ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рд╕рдВрджреЗрд╢ рднреА рд╕рдХреНрд╖рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП (рдирд┐рдпрдВрддреНрд░рдг => рд╕рдВрджреЗрд╢) рдФрд░ рд╕рдВрджреЗрд╢ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ (рд╕рдореВрд╣ рдореЗрдиреВ рдореЗрдВ)

     def send_captcha(captcha_url): #token ()  token = "" vk_session = vk_api.VkApi(token = token) vk = vk_session.get_api() #   url = vk.photos.getMessagesUploadServer()['upload_url'] #     request = requests.post(url, files={'photo': open("captcha.jpg", 'rb')}).json() #  photo = vk.photos.saveMessagesPhoto(server=request['server'], photo = request['photo'], hash = request['hash']) attachment = 'photo{}_{}'.format(photo[0]['owner_id'], photo[0]['id']) #  vk.messages.send( user_id = _ID, attachment = attachment, random_id=get_random_id()) #  os.remove("captcha.jpg") #  key = '' while (key == ''): #     messages = vk.messages.getDialogs()['items'][0] #     ,     if 'attachments' not in messages['message'].keys(): key = messages['message']['body'] return key 

    рдпрджрд┐ рд╣рдо рдХреЛрдб рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕реЗ рддрдм рддрдХ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдЬрдм рддрдХ рдХрд┐ рд╣рдо рдЗрд╕рдХреЗ рдХрд╛рд░реНрдп рдХреЛ рдмрд╛рдзрд┐рдд рдирд╣реАрдВ рдХрд░рддреЗред рдЬрдм рдХреИрдкреНрдЪрд╛ рджрд░реНрдЬ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рддреЛ рдХреИрдкреНрдЪрд╛ рдЫрд╡рд┐ рдХреЛ рдирд┐рдЬреА рд╕рдВрджреЗрд╢реЛрдВ рдореЗрдВ рднреЗрдЬрд╛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рдЫрд╡рд┐ рд╕реЗ рд╡рд░реНрдг рднреЗрдЬрдиреЗ рдХреЗ рдмрд╛рдж, рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдлрд╝реЛрдЯреЛ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рд╣реЗрдЧрд╛ред

    рдкреВрд░реНрдг рдХреЛрдб
     import os import time import random import requests import vk_api from vk_api.utils import get_random_id from urllib import urlretrieve def captcha_handler(captcha): captcha_url = captcha.get_url() urlretrieve(captcha_url, "captcha.jpg") key = send_captcha(captcha_url) print(key) return captcha.try_again(key) def send_captcha(captcha_url): token = "" vk_session = vk_api.VkApi(token = token) vk = vk_session.get_api() url = vk.photos.getMessagesUploadServer()['upload_url'] request = requests.post(url, files={'photo': open("captcha.jpg", 'rb')}).json() photo = vk.photos.saveMessagesPhoto(server=request['server'], photo = request['photo'], hash = request['hash']) attachment = 'photo{}_{}'.format(photo[0]['owner_id'], photo[0]['id']) vk.messages.send( user_id=_ID, attachment = attachment, random_id=get_random_id()) os.remove("captcha.jpg") key = '' while (key == ''): messages = vk.messages.getDialogs()['items'][0] if 'attachments' not in messages['message'].keys(): key = messages['message']['body'] return key vk_session = vk_api.VkApi('+7999132****', '*********', captcha_handler=captcha_handler) vk_session.auth() vk = vk_session.get_api() images = os.listdir("images") url = vk.photos.getOwnerPhotoUploadServer()['upload_url'] photo = [] for image in images: request = requests.post(url, files={'photo': open('images/'+image, 'rb')}).json() photo.append(request['photo']) server = request['server'] hash = request['hash'] y = 0 while(True): x = random.randint(0, len(photo)-1) while(x == y): x = random.randint(0, len(photo)-1) y = x vk.photos.saveOwnerPhoto(server = server, hash = hash, photo = photo[x]) posts = vk.wall.get() post_id = posts["items"][0]["id"] vk.wall.delete(post_id = post_id) photos = vk.photos.getAll() if (photos['count']>1): photo_id = photos["items"][1]["id"] vk.photos.delete(photo_id = photo_id) print("Successfully", x) time.sleep(60) 


    рд░рд╛рдЙрдВрдб-рдж-рдХреНрд▓реЙрдХ рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рдореИрдВ VPS рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВред рдореИрдВ рдЫрд╡рд┐рдпреЛрдВ рдХреЛ рд▓реЛрдб рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рд╕рд░реНрд╡рд░ рдкрд░ рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддрд╛ рд╣реВрдВред

    рдЧрд┐рдердм рдХреЛрдб

    рдпрджрд┐ рдЖрдкрдХреЗ рдХреЛрдИ рдкреНрд░рд╢реНрди рд╣реИрдВ, рддреЛ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдпрд╛ рдкреАрдПрдо рдореЗрдВ рд▓рд┐рдЦреЗрдВред

Source: https://habr.com/ru/post/hi464285/


All Articles