Ответы пользователя по тегу ВКонтакте
  • Как сделать передачу файлов в вконтакте с помощью Vk api на python3?

    @igorspesh
    1) надо получить url сервера методом docs.getUploadServer !!токен с правами на docs
    2) отправить фото на полученный url запрос такого вида requests.post(url, files=file)
    3) выкладываем фото методом /docs.save
    Ответ написан
    Комментировать
  • Как загрузить картинки в альбом группы вк?

    @igorspesh Автор вопроса
    import requests
    import json
    import re
    
    token = '!!!!!с photos привелегией!!!!!!'
    version = '5.95'
    group = 'id группы'
    alb = 'id альбома'
    img = 'путь до папки с картинками'
    adres = ''  #оставлять пустым
    img_url = '' #оставлять пустым
    chek = int(0)
    
    f = open('filelist.txt')   # filelists.txt <- файл с названием.расширением фото(построчно) 
    line = f.readline().rstrip('\r\n')
    while line:
        adres = img + line
        print(chek)
        chek += int(1)
        def get_url():
            r = requests.get('https://api.vk.com/method/photos.getUploadServer',
                             params={
                                 'access_token': token,
                                 'album_id': alb,
                                 'group_id': group,
                                 'v': version
                             }).json()
            return r['response']['upload_url']
    
    
        url = get_url()
    
        file = {'file1': open(adres, 'rb')}
        ur = requests.post(url, files=file).json()
        result = requests.get('https://api.vk.com/method/photos.save',
                              params={
                                  'access_token': token,
                                  'album_id': ur['aid'],
                                  'group_id': ur['gid'],
                                  'server': ur['server'],
                                  'photos_list': ur['photos_list'],
                                  'hash': ur['hash'],
                                  'v': version,
    
                              }).json()
        open(adres).close
        line = f.readline().rstrip('\r\n')
    f.close()
    print ('finish')
    Ответ написан