Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

95
Visualizações
Subir una carpeta llena de archivos a una carpeta específica en Amazon S3

Ha habido algunas otras preguntas como esta, pero ninguna parece haber respondido mi problema específicamente. Tengo una carpeta llena de archivos que quiero cargar en Amazon S3, y probé varias cosas diferentes, todas sin resultado de carga. Aquí está el código que tengo ahora. Crea con éxito la carpeta en S3, pero no se carga.

 import os import boto3 s3_bucket = 'bucketname' s3_bucket_region = 'us-east-1' folder = 'FolderName' key_name = folder + '/' s3_connect = boto3.client('s3', s3_bucket_region) try: bucket = s3_connect.put_object(Bucket=s3_bucket, Key=key_name) print "Bucket:", bucket except Exception as e: print "Bucket Error " , e # upload File to S3 for filename in os.listdir(folder): file_key_name = folder + '/' + filename local_path = os.getcwd() local_name = local_path + '/' + key_name + filename upload = s3_connect.upload_file(local_name, s3_bucket, file_key_name)

He probado un file_key_name de algo como 'FolderName/' así como 'FolderName/FileName'. Al principio pensé que el primer argumento (local_name) no necesitaba una ruta completa, pero una ruta relativa funcionaría, pero no funciona una ruta completa o relativa.

¿Qué me estoy perdiendo? Los documentos son lamentablemente deficientes en este departamento. Además, no arroja un error, simplemente no carga.

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Su código funciona perfectamente bien para mí, pero debe eliminar la sección de prueba/captura que crea la carpeta en Amazon S3.

Amazon S3 en realidad no admite carpetas. Más bien, la Key de un objeto incluye la ruta completa (p. ej. images/foo.jpg ). Por lo tanto, no necesita crear las carpetas antes de almacenar un archivo en ellas (¡ya que no existen!).

Su código tendrá dificultades con las carpetas anidadas. Puede considerar usar los comandos aws s3 sync o aws s3 cp en la interfaz de línea de comandos (CLI) de AWS si no necesita que estén escritos en su propio código.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda