Зачем все так усложнять? Не легче использовать vk_api? Например:
import vk_api
login, password = ' Логин от вконтакте', 'Пароль от вконтакте'
"""Авторизация"""
vk_session = vk_api.VkApi(login, password)
vk_session.auth()
vk = vk_session.get_api() #Чтобы легче было вызывать методы из vk_api
Создадим функцию отправку сообщения
def post(self, id, mes, at):
a = vk.wall.post(owner_id=id, message=mes, attachments=at) #Подробнее в vk.com/dev/wall.post
#в attachments медиа вложение
print(a) #Выводится ссылка на пост (не обязательно)
Легче, конечно отправить все картинки в альбом вк, а от туда через тот же vk_api перекидывать в массив и через random.choice(list) выбирать рандомную картинку, но если обязательно надо из папки, то по идее можно просто все пути на картинки также в массив перекинуть и рандомный брать.