С помощью boto для загрузки файлов у меня была странная ошибка 403 Forbidden, как и у многих других пользователей. Ни один из предоставленных им решений не работал для меня.Ошибка сервера AWS S3 403 из-за файла резервной копии
Дело в том, что я загрузил много файлов на своем ковше, и большинство из них работало, пока не дали ошибку 403.
Я также понял, что проблема была пришедшая из файла с именем UUID_Server.csv ~
При переименовании файла, удаление тильды, все работает. Я сделал обходной путь в своем сценарии, но решение не очень элегантно.
Любая идея, почему '~' не будет переваривать для s3? Я не использую конфигурационный файл, все в скрипте. Моя версия python - 2.7.3, и boto обновлена.
Заранее спасибо.
Поскольку символ '~' является символом, который может потребовать специальной обработки в URL-адресе посредством URL-кодирования (или может быть предоставлен специальная обработка, когда это не требуется), а код подписи должен генерировать подпись, которая соответствует кодировке, это кажется вероятным кандидатом на объяснение проблемы, и устаревшее состояние boto ... ну, да. Должно быть, это сработало. +1 –
Я переключился на boto3 с (почти) тем же сценарием. И на этот раз все отлично, спасибо! – Sogeking
@Sogeking Visiting 'boto' page Я нашел [запрос на удаление вашей проблемы] (https://github.com/boto/boto/commit/98651e86a5fddee84c123ff78dbe09eca68b5d5a) объединился неделю назад в мастер. Интересно, выпустят ли они когда-нибудь новую версию или сохранит «boto' в« использовании версии разработки, если вам нравится », как сейчас. Хорошо, что вы перешли на 'boto3'. –