import vk
#import pic_gen
import requests
#import SizeChecker
session = vk.AuthSession(access_token='ТОКЕН ДОСТУПА', scope=ПРАВА ДОСТУПА)
vk_api = vk.API(session, v='5.92')
filename = 'sample.png'
group_id = 'ID ГРУППЫ'
UplServ = vk_api.photos.getWallUploadServer(group_id=group_id)
upload_url = UplServ['upload_url']
img = {'photo': ('sample.png', open(r'sample.png', 'rb'))}
request = requests.post(upload_url, files=img)
params = {'server': request.json()['server'],
'photo': request.json()['photo'],
'hash': request.json()['hash'],
'group_id': group_id}
photo_id = vk_api.photos.saveWallPhoto(**params)
photo_id = photo_id[0]
photo_id = 'photo'+ '-' + str(photo_id['owner_id']) + '_' + str(photo_id['id'])
params = {'attachments': photo_id,
'message': 'Просто текст...',
'owner_id': '-' + group_id,
'from_group': '1'}
vk_api.wall.post(**params)
Есть вот такой кусок кода. По идее он должен загружать картинку на сервер VK, а затем постить её.
Проблема в том, что пост создаётся без картинки, только текст. Примечательно, что после работы функции
getWallUploadServer, переменная
UplServ принимает непонятно чей ['album_id'] и ['user_id'] (это не мои id пользователя или группы, и тем более у меня нет такого альбома)