Angenommen, die folgenden Dateien werden in s3 vorbereitet.
line/
└── diagonal/
└── hoge.csv
Erstellen Sie einen neuen "Straight" -Ordner unter dem "Line" -Ordner und kopieren Sie "Line / Diagonal / Hoge.csv" in diesen Ordner.
import os
import boto3
BUCKET_NAME = 'your_bucket' #Eimername
COPY_FROM = 'line/diagonal' #Quellverzeichnispfad kopieren
COPY_TO = 'line/straight' #Zielverzeichnispfad kopieren]
FILE_NAME = 'hoge.csv' #Dateiname
s3 = boto3.client('s3')
copy_from_path = os.path.join(COPY_FROM, FILE_NAME)
copy_to_path = os.path.join(COPY_TO, FILE_NAME)
s3.copy_object(Bucket=BUCKET_NAME, key=copy_to_path, CopySource={'Bucket': BUCKET_NAME, 'Key': COPY_FROM_PATH})
Bei der Ausführung wird ein "Straight" -Ordner unter dem "Line" -Ordner erstellt und "hoge.csv" wird dort kopiert.
line/
├── diagonal/
│ └── hoge.csv
└── straight/
└── hoge.csv
Löschen Sie "hoge.csv" aus dem "diagonalen" Ordner.
import os
import boto3
BUCKET_NAME = 'your_bucket' #Eimername
DELETE_DIR_PATH = 'line/diagonal' #Kopieren Sie den Pfad des Quellverzeichnisses
FILE_NAME = 'hoge.csv' #Dateiname
s3 = boto3.client('s3')
delete_file_path = os.path.join(DELETE_DIR_PATH, FILE_NAME)
s3.delete_object(Bucket=BUCKET_NAME, Key=delete_file_path)
Bei der Ausführung wird csv aus hoge.csv
im Ordner diagonal
gelöscht.
line/
├── diagonal/
│
└── straight/
└── hoge.csv
import os
import boto3
BUCKET_NAME = 'your_bucket' #Eimername
S3_PATH = 'line/straight'
LOCAL_PATH = 'hogehoge'
FILE_NAME = 'hoge.csv'
s3_resource = boto3.resource('s3')
bucket = s3_resource.Bucket(BUCKET_NAME)
downlod_from_path = os.path.join(S3_PATH, FILE_NAME)
download_to_path = os.path.join(LOCAL_PATH, FILE_NAME)
bucket.download_file(downlod_from_path, download_to_path)
import os
import pandas as pd
from io import StringIO
import boto3
S3_PATH = 'line/diagonal'
FILE_NAME = 'diagonal.csv'
df = pd.DataFrame([[1, 10], [2, 20], [3, 30]])
upload_path = os.path.join(S3_PATH, FILE_NAME)
csv_buffer = StringIO()
df.to_csv(csv_buffer)
s3_resource = boto3.resource('s3')
s3_resource.Object(S3_BUCKET, upload_path.put(Body=csv_buffer.getvalue())
Bei der Ausführung wird "diagonl.csv" unter dem Ordner "diagonal" erstellt.
line/
├── diagonal/
│ └── diagonal.csv
└── straight/
└── hoge.csv
Recommended Posts