ERR_UPLOAD_BAD_SIGNATURE при загрузке фото через Python requests и VK API

Стоит задача отправить картинку в личное сообщение от бота без сторонних библиотек. Делаю всё по инструкции, но на этапе загрузки не получается передать фото на сервер.

Код приблизительно такой

def add_photo(receiver_id, picture_url):
    photo = requests.get(picture_url, stream=True).raw
    # также пробовал photo = requests.get(picture_url).content

    upload_url = # ... getting upload_url ... #

    uploaded = requests.post(
        upload_url,
        files=[ ('photo', ('pic.png', photo)) ],
        # также пробовал files={'photo': photo},
        data={
            'access_token': os.getenv('VK_TOKEN'),
            'v': 5.126
        }
    ).json() 

    # ... saving image ... #

В ответ приходит ошибка

{'error': 'ERR_UPLOAD_BAD_SIGNATURE', 'bwact': 'do_add', 'server': 519136, '_sig': '...'}

Заметил, что в запросе отправляется Content-Type: multipart/form-data; boundary=... если вручную указать заголовок Content-Type: multipart/form-data, то в ответ приходит без ошибки, но и без параметров загруженного изображения.

Подскажите, пожалуйста, в чём может быть проблема


Ответы (0 шт):