Попробуйте скрипт сначала на своей странице (укажите OWNER_ID = None). Потом на странице другого пользователя. Насколько я помню, у групп вк OWNER_ID отличаются от пользовательских – их id с минусом пишется:
import vk_apiimport sysimport random# Скрипт помещает картинки на стену пользователя vk.comdef vk_auth(login, password): vk = vk_api.VkApi(login, password) try: vk.authorization() # Авторизируемся except vk_api.AuthorizationError as error_msg: print(error_msg) # В случае ошибки выведем сообщение sys.exit() retu vk# Логин, пароль к аккаунту и id человека, на стену которого будем постить сообщенияLOGIN = ''PASSWORD = ''OWNER_ID = ''if __name__ == '__main__': # Авторизируемся vk = vk_auth(LOGIN, PASSWORD) # Список с ссылками на картинки hrefs = [ 'https://danbooru.donmai.us/data/sample/--saber-and-saber-alter-fate-stay-night-and-fate-series-drawn-by-goldengear870--sample-5c66a91632c80384fd9a1e8c43bb5fd7.jpg' ] # ""Перемешаем"" элементы списка random.shuffle(hrefs) # Добавление сообщения на стену пользователя # Если не указывать owner_id, сообщения себе на стену поместится for href in hrefs: rs = vk.method('wall.post', { 'owner_id': OWNER_ID, 'message': 'Хей!', 'attachments': href, }) print(rs)
Если сервер вк не подхватил картинку и не стал ее отображать в посте, тогда нужно будет сначала залить на их сервер. Тут нужно использовать методы: photos.getWallUploadServer и photos.saveWallPhoto.
Пример:
def send_method(method, data=None): import logger import time logger.debug('Запуск %s с данными: %s.', method, data) rs = vk.method(method, data) logger.debug('Response: ""%s""', str(rs).encode()) time.sleep(0.5) retu rs# Путь к картинкеfile_name = ...rs = send_method('photos.getWallUploadServer')upload_url = rs['upload_url']rs = requests.post(upload_url, files={'photo': open(file_name, 'rb')})rs = json.loads(rs.text)rs = send_method('photos.saveWallPhoto', {'photo': rs['photo'], 'server': rs['server'], 'hash': rs['hash']})# attachments поместить в `vk.method('wall.post'`attachments = 'photo{}_{}'.format(OWNER_ID, rs[0]['id'])