рдкрд╛рдпрдерди рдореЗрдВ рдЗрдВрд╕реНрдЯрд╛рдЧреНрд░рд╛рдо рд╕реЗ рд▓реЗрдХрд░ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╡реАрдХреЗ рддрдХ рдХреА рдкреЛрд╕реНрдЯ-рдкреЛрд╕реНрдЯрд┐рдВрдЧ



рдкреНрд░рд╕реНрддрд╛рд╡рдирд╛


рдореИрдВрдиреЗ рдПрдХ рдирдП рдмрд╛рдЬрд╛рд░ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рдЦрд╛рд╕рдХрд░ рдЬрдм рд╕реЗ рдореЗрд░реЗ рдСрдирд▓рд╛рдЗрди рд╕реНрдЯреЛрд░ рдХреЗ рд▓рдХреНрд╖рд┐рдд рджрд░реНрд╢рдХреЛрдВ, рдЬрд┐рд╕рдореЗрдВ рдЗрдВрд╕реНрдЯрд╛рдЧреНрд░рд╛рдо рдЕрдХрд╛рдЙрдВрдЯ рдирд╣реАрдВ рд╣реИрдВ, рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рд╡реАрдХреЗ рдореЗрдВ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВред рд╡рд┐рдЪрд╛рд░ рдЕрдЪреНрдЫрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдкреГрд╖реНрда рдкрд░ рдХреНрд░рдорд╢рдГ рд╕реИрдХрдбрд╝реЛрдВ рдкреЛрд╕реНрдЯ рд╣реИрдВ, рдореИрдВ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ ctrl + c ctrl + v рдХрд╛рдо рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рд╕рд╛рде рд╣реА рдмрдВрджрд░ рдХреЗ рдХрд╛рдо рдХреА рдЖрдЧреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛рдПрдВ рдкреНрд░рднрд╛рд╡рд╢рд╛рд▓реА рдирд╣реАрдВ рдереАрдВред

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

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

рдЗрдВрд╕реНрдЯрд╛рдЧреНрд░рд╛рдо рдПрдкреАрдЖрдИ рдФрд░ рд╡реАрдХреЗ рдкрд░ рдкреНрд░рд▓реЗрдЦрди рдХрд╛рдлреА рд╡рд┐рд╕реНрддреГрдд рд╣реИ рдФрд░ рдХрд╛рд░реНрдп рдЬрдЯрд┐рд▓ рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИред рдЕрдкрдиреЗ рдЖрдк рдХреЛ рд╢рд╛рдо рдХреЛ рдореБрдХреНрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВрдиреЗ рдХрд╛рдо рдХрд░рдирд╛ рддрдп рдХрд┐рдпрд╛ред рдкрд╣рд▓рд╛ рдХрджрдо рдЗрдВрд╕реНрдЯрд╛рдЧреНрд░рд╛рдо рдФрд░ рд╡реАрдХреЗ рджреЛрдиреЛрдВ рдореЗрдВ рдЯреЛрдХрди рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдерд╛ред рдЗрд╕рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рдереА, рджреЛрдиреЛрдВ рдХреЛ рдХреБрдЫ рдорд┐рдирдЯреЛрдВ рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рд╣реБрдЖред

рддрдм рдкрд╣рд▓реА рдЦрд░рд╛рдмреА рдХрд╛ рдореБрдЭреЗ рдЗрдВрддрдЬрд╛рд░ рдерд╛ ...

рдкрд╣рд▓реЗ 20 рдкрджреЛрдВ рдХреЛ рдкрд╛рд░ рдХрд░рдирд╛


рдореЗрд░реЗ рдЖрд╢реНрдЪрд░реНрдп рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдкрд╛рдпрд╛ рдХрд┐ Instagram рдиреАрддрд┐ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рдмрд╛рдж, рдкреЗрдЬ рдХреЗ рдХреЗрд╡рд▓ 20 рдкреЛрд╕реНрдЯреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдЬреЛрдВрд╕ рд╢рдмреНрджрдХреЛрд╢ (рдлреЛрдЯреЛ рдХреЗ рд▓рд┐рдВрдХ, рдкреЛрд╕реНрдЯ рдХрд╛ рд╡рд░реНрдгрди, рдкреНрд░рдХрд╛рд╢рди рдХреА рддрд╛рд░реАрдЦ ...) рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рдерд╛ред рдЗрд╕рдиреЗ рдореБрдЭреЗ рджреВрд╕рд░реЗ рдХрд╛рд░реНрдп рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓ рдХрд┐рдпрд╛ - рд╕рдордп-рд╕рдордп рдкрд░ рдирдП рдкрджреЛрдВ рдХреЗ рд╕рд╛рде рдЬрдирддрд╛ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ред рдХреНрдпреЛрдВрдХрд┐ рдирдП рдкреНрд░рдХрд╛рд╢рди рдореЗрд░реЗ рд╕рд╛рде рдЕрдХреНрд╕рд░ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрддреЗ рд╣реИрдВ рдФрд░ 20 рдкрдж рдХрд╛рдлреА рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИрдВред рдЗрд╕ рдХрд╛рд░реНрдп рдХреЛ рдкрд╣рд▓реЗ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рдЧрдпрд╛ред

рд╣рдо рд╡реАрдХреЗ рд╕рддреНрд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЖрд╡рд╢реНрдпрдХ рдЪрд░ рдШреЛрд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВ:

session = vk.Session( access_token='123abc') #  123abc   vk_api = vk.API(session, v='5.85') groupID = '12345678' #id  vk upload_url = vk_api.photos.getWallUploadServer(group_id=groupID)['upload_url'] #  vk   data = [] photo_id = 0 attachments = [] direct = 'C:/Users/jo/PycharmProjects/repost/foto' #     d = date(2019, 3, 21) # ,      data_parsing = int(time.mktime(d.timetuple())) #    unix  

рдЕрдЧрд▓рд╛, рд╣рдо рдореБрдЦреНрдп рдХрд╛рд░реНрдп рд▓рд┐рдЦрддреЗ рд╣реИрдВред рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдПрдХ рдбреЗрдЯрд╛ рдорд┐рд▓рддрд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рд╣рдо рдХрд╛рдо рдХрд░реЗрдВрдЧреЗ:

 answer = get( 'https://api.instagram.com/v1/users/[id_inst]/media/recent?access_token=[access_token]', verify=True).json() 

рдЕрдиреБрд░реЛрдз рдореЗрдВ, рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдбреЗрдЯрд╛ рдХреЛ рд╡рд░реНрдЧ рдХреЛрд╖реНрдардХ рдХреЗ рдмрдЬрд╛рдп рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рд╕реЗ рдкреЗрдЬ рдЖрдИрдбреА рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред

рдпрджрд┐ рд╣рдореЗрдВ рдХреБрдЫ рд╡рд╛рдкрд╕ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЖрдЧреЗ рдмрдврд╝реЗрдВ:

 if answer: for x in answer['data']: #     json  global photo_id #     photo_id = 0 global attachments attachments = [] global data data = [] date_create = x['created_time'] # date_create    Unix if int(date_create) > data_parsing: n = 0 #     if not os.path.isdir(direct + '/' + date_create): #     os.makedirs(direct + '/' + date_create) if 'carousel_media' in x: #      for a in x['carousel_media']: li = list(a.keys()) #      if li.count('videos') == 0: #    ,      req.urlretrieve(a['images']['standard_resolution']['url'], "foto/" + date_create + "/" + str(n) + ".jpg") #       if x['caption'] is not None: #   text = str(x['caption']['text']) else: text = ' ' n = n + 1 post_foto(date_create, text) else: #      req.urlretrieve(x['images']['standard_resolution']['url'], "foto/" + date_create + "/0.jpg") if x['caption'] is not None: #   text = str(x['caption']['text']) else: text = ' ' post_foto(date_create, text) 

рдореБрдЭреЗ рдкрд╢реНрдЪрд╛рддрд╛рдк рд╣реБрдЖ
рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рд╡реИрд╢реНрд╡рд┐рдХ рдЪрд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдмреБрд░рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЖрдХрд╛рд░ рдЖрдкрдХреЛ рдЬрдЯрд┐рд▓рддрд╛ рдореЗрдВ рдирд╣реАрдВ рдлрдВрд╕рдиреЗ рджреЗрддрд╛ рд╣реИ

рдЗрд╕рд▓рд┐рдП, рдЕрдЧрд░ рдкреЛрд╕реНрдЯ рдХреА рдкреНрд░рдХрд╛рд╢рди рддрд┐рдерд┐ рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рддрд┐рдерд┐ рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ, рддреЛ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдмрдирд╛рдПрдВ рдЬрд┐рд╕рдХрд╛ рдирд╛рдо (рдзреНрдпрд╛рди рддрдирд╛рддрдиреА, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдпрд╛рдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрд╡реЗрджрдирд╢реАрд▓) рдЙрд╕рдХреЗ рдкреНрд░рдХрд╛рд╢рди рдХреА рддрд╛рд░реАрдЦред рдЕрдЧрд▓рд╛ рдлрд╝реЛрдЯреЛ рдФрд░ рд╡реАрдбрд┐рдпреЛ рдХреА рд╕рдВрдЦреНрдпрд╛ рдкрд░ рдЬрд╛рдБрдЪ рд╣реИред рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЖрдк рдЗрд╕реЗ рд╕рдВрд▓рдЧреНрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдореБрдЭреЗ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдмрдирд╛рдП рдЧрдП рдлреЛрд▓реНрдбрд░ рдореЗрдВ рдлреЛрдЯреЛ рдЕрдкрд▓реЛрдб рдХрд░реЗрдВред рд╣рдо рдХреИрдкреНрд╢рди рдХреБрдВрдЬреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреЛрд╕реНрдЯ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╡рд░рдг рд▓реЗрддреЗ рд╣реИрдВ рдФрд░ рдкреЛрд╕реНрдЯ_рдлреЛрдЯреЛ рдлрд╝рдВрдХреНрд╢рди рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВ:

 def post_foto(date_create, text): quantity_foto = len([name for name in os.listdir(direct + "/" + date_create) if os.path.isfile(os.path.join(direct + "/" + date_create, name))]) #     append_attach(quantity_foto, date_create) params = {'attachments': attachments, 'message': text, 'owner_id': '-' + groupID, 'from_group': '1'} vk_api.wall.post(**params) #    VK    

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

 def append_attach(x, directory): #     for t in range(x): upload_foto(t, directory) global photo_id photo_id = data[t][0]['id'] global attachments attachments.append('photo' + str(data[t][0]['owner_id']) + '_' + str(photo_id)) #  id     

рдФрд░ рд╡реАрдХреЗ рд╕рд░реНрд╡рд░ рдкрд░ рд╕реАрдзреЗ рддрд╕реНрд╡реАрд░реЗрдВ рдЕрдкрд▓реЛрдб рдХрд░рдирд╛ upload_foto рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:

 def upload_foto(num_foto, directory): #     request = requests.post(upload_url, files={'photo': open("foto/" + directory + "/" + str(num_foto) + ".jpg", "rb")}) params = {'server': request.json()['server'], 'photo': request.json()['photo'], 'hash': request.json()['hash'], 'group_id': groupID} global data data.append(vk_api.photos.saveWallPhoto(**params)) 

рд╣рдордиреЗ рджреВрд╕рд░рд╛ рдХрд╛рдо рдЫрд╛рдВрдЯрд╛ред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЕрдкрдиреЗ рджрдо рдкрд░ рдпрд╛ рд╕рдордп рдкрд░ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреНрд░реЛрди рдореЗрдВ , рд╣рд░ 15 рдорд┐рдирдЯ рдореЗрдВ рдПрдХ рдмрд╛рд░) рдЪрд▓рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рдЕрдм рдЕрдиреНрдп рд╕рднреА рд╕реИрдХрдбрд╝реЛрдВ рдкрджреЛрдВ рдХреЛ рдХреИрд╕реЗ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП?

рдкреВрд░рд╛ рдкреГрд╖реНрда рд▓рдкреЗрдЯреЗрдВ


рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдПрдХ рд╣рд┐рд╕реНрд╕рд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рддреИрдпрд╛рд░ рд╣реИ, рд╡рд╣ рдЬреЛ рд╡реАрдХреЗ рдореЗрдВ рд╕реНрд╡рдпрдВ рдкреНрд░рдХрд╛рд╢рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рдерд╛ред рдпрд╣ рдЙрдирдХреЗ рд▓рд┐рдП рд╕рднреА рдлрд╝реЛрдЯреЛ рдФрд░ рд╡рд┐рд╡рд░рдгреЛрдВ рдХреЛ рдЕрдкрд╡рд┐рддреНрд░ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛ рд╣реБрдЖ рд╣реИред рдореИрдВрдиреЗ рдЗрдВрд╕реНрдЯрд╛рдЧреНрд░рд╛рдо рдкреЗрдЬреЛрдВ рдХреЗ рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рд╕реЗ рдкрд░реЗрд╢рд╛рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдФрд░ рдПрдХ рддреИрдпрд╛рд░ рд╕рдорд╛рдзрд╛рди рд▓рд┐рдпрд╛ред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рд╣реИрдВ, рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдореБрдлреНрдд рдПрдХ ( 4K рд╕реНрдЯреЛрдЧреНрд░рд╛рдо ) рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ред рд╕рд╣рдЬ рдЬреНрдЮрд╛рди рдпреБрдХреНрдд рдЕрдВрддрд░рдлрд▓рдХ рдЖрдкрдХреЛ рдкреГрд╖реНрда рд╕реЗ рд╕рднреА рдлрд╝реЛрдЯреЛ рдХреЗ рдбрд╛рдЙрдирд▓реЛрдб рдХреЗ рд╕рд╛рде рдЬрд▓реНрджреА рд╕реЗ рд╕рд╛рдордирд╛ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдореЗрдиреВ рдореЗрдВ рдкрджреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рднреА рд╡рд┐рд╡рд░рдгреЛрдВ рдХрд╛ рдирд┐рд░реНрдпрд╛рдд рднреА рд╣реИред рд╣рдореЗрдВ " * .txt " рдкреНрд░рд╛рд░реВрдк рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣ рдХреЗрд╡рд▓ рдлрд╝реЛрд▓реНрдбрд░реНрд╕ (рдПрдХ рдкреЛрд╕реНрдЯ - рдПрдХ рдлрд╝реЛрд▓реНрдбрд░) рдореЗрдВ рд╕рднреА рдлрд╝реЛрдЯреЛ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдкрд╛рдареНрдпрдкреБрд╕реНрддрдХ рд╕реЗ рдкрджреЛрдВ рдХреЗ рд╡рд┐рд╡рд░рдг рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдиреА рд╣реБрдИ рд╣реИред

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рд╣рдореЗрдВ рдлрд╝реЛрдЯреЛ рдХреЛ рдлрд╝реЛрд▓реНрдбрд░реНрд╕ рдореЗрдВ рд╡рд┐рдШрдЯрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛:

 i = 0 for top, dirs, files in os.walk(os.getcwd()+"\\res\\"): for nm in files: if re.findall(r'\d\d\.\d\d\.\d\d', nm): old_file = os.path.join(top, nm) frq = re.findall(r'\d\d\d\d-\d\d-\d\d \d\d\.\d\d\.\d\d', str(nm)) frq = str(frq[0]) if not os.path.exists(os.getcwd()+"\\res\\" + frq): i = 0 os.makedirs(os.getcwd() + "\\res\\" + frq) new_file = os.path.join(os.getcwd() + "\\res\\" + frq, str(i)+'.jpg') os.rename(old_file, new_file) i = i+1 else: new_file = os.path.join(os.getcwd() + "\\res\\" + frq, str(i)+'.jpg') os.rename(old_file, new_file) i = i+1 

рдпрд╣рд╛рдВ, рдореБрдЦреНрдп рдмрд┐рдВрджреБ рдкреНрд░рдХрд╛рд╢рди рд╕рдордп рд╣реИ, рдЬреЛ рдХрдИ рддрд╕реНрд╡реАрд░реЛрдВ рдХреЛ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдЬреЛрдбрд╝рддрд╛ рд╣реИред

рдЦреИрд░, рдлрд┐рд░ рд╕рдм рдХреБрдЫ рд╕рд░рд▓ рд╣реИред рд╣рдо рдкреНрд░рддреНрдпреЗрдХ рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рдЦреЛрд▓рддреЗ рд╣реИрдВ, рд╕рд░реНрд╡рд░ рдкрд░ рд╕рднреА рддрд╕реНрд╡реАрд░реЗрдВ рдЕрдкрд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВ, рд╡рд┐рд╡рд░рдг рд╕рдВрд▓рдЧреНрди рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рд╡реАрдХреЗ рдкреНрд░рддрд┐рдмрдВрдз рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдордд рднреВрд▓рдирд╛: рдкреНрд░рддрд┐ рджрд┐рди 50 рд╕реЗ рдЕрдзрд┐рдХ рдкрдж рдирд╣реАрдВ:

 f = open(os.getcwd() + "\input_opis\\gusi.txt", "rt", errors="ignore", encoding='utf-8') #     data = f.read() #  ,      result = re.findall(r'"([^\"]*)"', data, re.S) new_x = [el for el, _ in groupby(result)] #     dlina = new_x.__len__() i = 1 f.close() for top, dirs, files in os.walk(os.getcwd() + "\\res\\"): #   for nm in dirs: attachments = [] photo_id = 0 data = [] DIR = 'C:/Users/jo/PycharmProjects/repost/res/' + nm #     quantity_foto = len([name for name in os.listdir(DIR) if os.path.isfile(os.path.join(DIR, name))]) post_foto(quantity_foto, nm) attachments.reverse() #   params = {'attachments': attachments, 'message': new_x[dlina - i], 'owner_id': '-' + groupID, 'from_group': '1'} vk_api.wall.post(**params) i = i + 1 

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

рд╕рднреА 3 рд▓рд┐рдкрд┐рдпрд╛рдБ рдЕрдкрдиреА рд╕рдВрдкреВрд░реНрдгрддрд╛ рдореЗрдВ:

рдкрд╣рд▓реЗ 20 рдкрджреЛрдВ рдХреЛ рдкрд╛рд░ рдХрд░рдирд╛
 from requests import get import urllib.request as req import vk import requests import os import time from datetime import date session = vk.Session( access_token='123abc') vk_api = vk.API(session, v='5.85') groupID = '12345678' #id  vk upload_url = vk_api.photos.getWallUploadServer(group_id=groupID)['upload_url'] #  vk   data = [] photo_id = 0 attachments = [] direct = 'C:/Users/jo/PycharmProjects/repost/foto' #     d = date(2019, 3, 21) # ,      data_parsing = int(time.mktime(d.timetuple())) #    unix  def upload_foto(num_foto, directory): #     request = requests.post(upload_url, files={'photo': open("foto/" + directory + "/" + str(num_foto) + ".jpg", "rb")}) params = {'server': request.json()['server'], 'photo': request.json()['photo'], 'hash': request.json()['hash'], 'group_id': groupID} global data data.append(vk_api.photos.saveWallPhoto(**params)) def append_attach(x, directory): #             for t in range(x): upload_foto(t, directory) global photo_id photo_id = data[t][0]['id'] global attachments attachments.append('photo' + str(data[t][0]['owner_id']) + '_' + str(photo_id)) #  id     def post_foto(date_create, text): quantity_foto = len([name for name in os.listdir(direct + "/" + date_create) if os.path.isfile(os.path.join(direct + "/" + date_create, name))]) #     append_attach(quantity_foto, date_create) params = {'attachments': attachments, 'message': text, 'owner_id': '-' + groupID, 'from_group': '1'} vk_api.wall.post(**params) #    VK    def get_all(): answer = get( 'https://api.instagram.com/v1/users/12345678/media/recent?access_token=123abc', verify=True).json() #     instagram if answer: for x in answer['data']: #     json  global photo_id #     photo_id = 0 global attachments attachments = [] global data data = [] date_create = x['created_time'] # date_create    Unix if int(date_create) > data_parsing: n = 0 #     if not os.path.isdir(direct + '/' + date_create): #     os.makedirs(direct + '/' + date_create) if 'carousel_media' in x: #      for a in x['carousel_media']: li = list(a.keys()) #      if li.count('videos') == 0: #    ,      req.urlretrieve(a['images']['standard_resolution']['url'], "foto/" + date_create + "/" + str(n) + ".jpg") #       if x['caption'] is not None: #   text = str(x['caption']['text']) else: text = ' ' n = n + 1 post_foto(date_create, text) else: #      req.urlretrieve(x['images']['standard_resolution']['url'], "foto/" + date_create + "/0.jpg") if x['caption'] is not None: #   text = str(x['caption']['text']) else: text = ' ' post_foto(date_create, text) get_all() 


рдлрд╝реЛрд▓реНрдбрд░ рджреНрд╡рд╛рд░рд╛ рдлрд╝реЛрдЯреЛ рдХреЛ рдХреНрд░рдордмрджреНрдз рдХрд░реЗрдВ
 import re import os i = 0 for top, dirs, files in os.walk(os.getcwd()+"\\res\\"): for nm in files: if re.findall(r'\d\d\.\d\d\.\d\d', nm): old_file = os.path.join(top, nm) frq = re.findall(r'\d\d\d\d-\d\d-\d\d \d\d\.\d\d\.\d\d', str(nm)) frq = str(frq[0]) if not os.path.exists(os.getcwd()+"\\res\\" + frq): i = 0 os.makedirs(os.getcwd() + "\\res\\" + frq) new_file = os.path.join(os.getcwd() + "\\res\\" + frq, str(i)+'.jpg') os.rename(old_file, new_file) i = i+1 else: new_file = os.path.join(os.getcwd() + "\\res\\" + frq, str(i)+'.jpg') os.rename(old_file, new_file) i = i+1 


рд╡реАрдХреЗ рд╕рднреА рдкреНрд░рдХрд╛рд╢рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдкреЛрд╕реНрдЯрд┐рдВрдЧ
 import os import vk import requests import re from itertools import groupby session = vk.Session( access_token='123abc') vk_api = vk.API(session, v='5.85') groupID = '12345678' upload_url = vk_api.photos.getWallUploadServer(group_id=groupID)['upload_url'] data = [] photo_id = 0 attachments = [] def upload_foto(num_foto, direc): request = requests.post(upload_url, files={'photo': open('res/' + direc + "/" + str(num_foto) + ".jpg", "rb")}) params = {'server': request.json()['server'], 'photo': request.json()['photo'], 'hash': request.json()['hash'], 'group_id': groupID} global data data.append(vk_api.photos.saveWallPhoto(**params)) def post_foto(x, direc): for i in range(x): upload_foto(i, direc) global photo_id photo_id = data[i][0]['id'] global attachments attachments.append('photo' + str(data[i][0]['owner_id']) + '_' + str(photo_id)) f = open(os.getcwd() + "\input_opis\\gusi.txt", "rt", errors="ignore", encoding='utf-8') #     data = f.read() #  ,      result = re.findall(r'"([^\"]*)"', data, re.S) new_x = [el for el, _ in groupby(result)] #     dlina = new_x.__len__() i = 1 f.close() for top, dirs, files in os.walk(os.getcwd() + "\\res\\"): #   for nm in dirs: attachments = [] photo_id = 0 data = [] DIR = 'C:/Users/jo/PycharmProjects/repost/res/' + nm #     quantity_foto = len([name for name in os.listdir(DIR) if os.path.isfile(os.path.join(DIR, name))]) post_foto(quantity_foto, nm) attachments.reverse() #   params = {'attachments': attachments, 'message': new_x[dlina - i], 'owner_id': '-' + groupID, 'from_group': '1'} vk_api.wall.post(**params) i = i + 1 

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


All Articles