Încărcarea și descărcarea fișierelor

Introducere în AWS Boto în Python

Maksim Pecherskiy

Data engineer

Bucketuri și obiecte

Bucket cu obiecte

Introducere în AWS Boto în Python

Un Bucket

Bucketuri S3

  • Un bucket are un nume
  • Numele este un șir de caractere
  • Unic în întreg S3
  • Conține mai multe obiecte

Un Obiect

Obiecte S3

  • Un obiect are o cheie
  • Numele este calea completă din rădăcina bucketului
  • Cheie unică în bucket
  • Poate fi în un singur bucket părinte
Introducere în AWS Boto în Python

Crearea clientului

s3 = boto3.client(
  's3', 
  region_name='us-east-1', 
  aws_access_key_id=AWS_KEY_ID, 
  aws_secret_access_key=AWS_SECRET
)

Comunicarea clientului cu S3

Introducere în AWS Boto în Python

Încărcarea fișierelor

s3.upload_file(
  Filename='gid_requests_2019_01_01.csv', 
  Bucket='gid-requests', 
  Key='gid_requests_2019_01_01.csv')

Încărcarea unui obiect în bucket

Introducere în AWS Boto în Python

Încărcarea fișierelor

Fișier în S3

Introducere în AWS Boto în Python

Încărcarea mai multor obiecte

Încărcarea mai multor obiecte

Introducere în AWS Boto în Python

Listarea obiectelor dintr-un bucket

response = s3.list_objects(
  Bucket='gid-requests', 
  MaxKeys=2,
  Prefix='gid_requests_2019_')

print(response)

Răspuns list objects

Introducere în AWS Boto în Python

Listarea obiectelor dintr-un bucket

Listarea obiectelor dintr-un bucket

Introducere în AWS Boto în Python

Listarea obiectelor dintr-un bucket

Listarea obiectelor dintr-un bucket

Introducere în AWS Boto în Python

Listarea obiectelor dintr-un bucket

Listarea obiectelor dintr-un bucket

Introducere în AWS Boto în Python

Obținerea metadatelor unui obiect

response = s3.head_object(
  Bucket='gid-requests', 
  Key='gid_requests_2018_12_30.csv')

print(response)

Metoda head object

Introducere în AWS Boto în Python

Obținerea metadatelor unui obiect

Răspuns metadate obiect

Introducere în AWS Boto în Python

Descărcarea fișierelor

s3.download_file(
  Filename='gid_requests_downed.csv',
  Bucket='gid-requests', 
  Key='gid_requests_2018_12_30.csv')

Descărcarea fișierelor

Introducere în AWS Boto în Python

Ștergerea obiectelor

s3.delete_object(
  Bucket='gid-requests', 
  Key='gid_requests_2018_12_30.csv')

Ștergerea unui obiect

Introducere în AWS Boto în Python

Rezumat

  • Bucketurile sunt ca niște foldere
  • Obiectele sunt ca niște fișiere
  • boto3.client()
  • s3.upload_file()
  • s3.list_objects()
  • s3.head_object()
  • s3.download_file()
  • s3.delete_object()

Bucketuri

Introducere în AWS Boto în Python

Să creăm câteva obiecte!

Introducere în AWS Boto în Python

Preparing Video For Download...