Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

201
Views
Cómo copiar de un cubo a otro cubo en s3 de cierto sufijo

Tengo 3 cubos 1.commonfolder 2.jsonfolder 3.csvfolder .

  • La carpeta común tendrá archivos json y csv

  • necesita copiar todos los archivos csv a csvfolder

  • necesita copiar todos los archivos json a la carpeta json

El código está debajo para obtener todos los archivos de la commonfolder Cómo copiar después de eso

 import boto3 s3 = boto3.client('s3') def lambda_handler(event, context): #List all the bucket names response = s3.list_buckets() for bucket in response['Buckets']: print (bucket) print(f'{bucket["Name"]}') #Get the files of particular bucket if bucket["Name"] == 'tests3json': resp = s3.list_objects_v2(Bucket='commonfolder') for obj in resp['Contents']: files = obj['Key'] print(files) if(filename.split('.')[1].lower()=='json'): copyjson(bucket,filename) #copyjson(jsonfolder,filename) elif(filename.split('.')[1].lower()=='csv'): copycsv(bucket, filename) #copycsv(csvfolder,filename)
  • necesita crear una nueva función copyjson,copycsv para hacer este trabajo

  • Necesita copiar de common-bucket a csv-bucket o json-bucket dependiendo de la extensión del archivo

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Puedes comprobar el siguiente código:

 import boto3 s3 = boto3.resource('s3') def lambda_handler(event, context): source_bucket = s3.Bucket('01-commonfolder-231') json_bucket = s3.Bucket('02-jsonfolder-3435') csv_bucket = s3.Bucket('03-csvfolder-4552') for object in source_bucket.objects.all(): #print(object) if object.key.endswith('.json'): print(f"{object.key} to json bucket") copy_object = json_bucket.Object(object.key) copy_object.copy({'Bucket': object.bucket_name, 'Key': object.key}) elif object.key.endswith('.csv'): print(f"{object.key} to csv bucket") copy_object = csv_bucket.Object(object.key) copy_object.copy({'Bucket': object.bucket_name, 'Key': object.key})

Probé esto usando mis propios cubos de muestra con archivos de prueba:

 aaa.json to json bucket bbbbb.csv to csv bucket bbbbb.json to json bucket hhhh.csv to csv bucket
over 4 years ago · Santiago Trujillo Report

0

Puedes usar el método move() de shutil :

 from shutil import move from glob import glob common_folder = 'C:\\Users\\User\\Desktop\\commonfolder\\' csv_folder = 'C:\\Users\\User\\Desktop\\csvfolder\\' json_folder = 'C:\\Users\\User\\Desktop\\jsonfolder\\' for csv in glob(common_folder+"*.csv"): move(csv, csv_folder) for json in glob(common_folder+"*.json"): move(json, json_folder)
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!