আমার কাছে এমন কিছু আছে যা দেখে মনে হচ্ছে আমার আরও কিছুটা অর্ডার রয়েছে:
import boto3
from pprint import pprint
from botocore.exceptions import NoCredentialsError
class S3(object):
BUCKET = "test"
connection = None
def __init__(self):
try:
vars = get_s3_credentials("aws")
self.connection = boto3.resource('s3', 'aws_access_key_id',
'aws_secret_access_key')
except(Exception) as error:
print(error)
self.connection = None
def upload_file(self, file_to_upload_path, file_name):
if file_to_upload is None or file_name is None: return False
try:
pprint(file_to_upload)
file_name = "your-folder-inside-s3/{0}".format(file_name)
self.connection.Bucket(self.BUCKET).upload_file(file_to_upload_path,
file_name)
print("Upload Successful")
return True
except FileNotFoundError:
print("The file was not found")
return False
except NoCredentialsError:
print("Credentials not available")
return False
তিনটি গুরুত্বপূর্ণ এখানে ভেরিয়েবল, করছি বালতি const, file_to_upload এবং FILE_NAME
BUCKET
: আপনার এস 3 বালতির নাম
file_to_upload_path
: আপনি যে ফাইলটি আপলোড করতে চান তা হতে হবে
file_name
: আপনার বালতিতে ফলাফল ফাইল এবং পথ (এটি যেখানে আপনি ফোল্ডার যুক্ত করেন বা যা কখনও)
অনেক উপায় আছে তবে আপনি এই কোডটি অন্য স্ক্রিপ্টে এই জাতীয় পুনরায় ব্যবহার করতে পারেন
import S3
def some_function():
S3.S3().upload_file(path_to_file, final_file_name)