Jest to kod pracuję zBoto - przesyłanie plików do określonej lokalizacji na Amazon S3
import sys
import boto
import boto.s3
# AWS ACCESS DETAILS
AWS_ACCESS_KEY_ID = ''
AWS_SECRET_ACCESS_KEY = ''
bucket_name = AWS_ACCESS_KEY_ID.lower() + '-mah-bucket' conn = boto.connect_s3(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY)
bucket = conn.create_bucket(bucket_name, location=boto.s3.connection.Location.DEFAULT)
uploadfile = sys.argv[1]
print 'Uploading %s to Amazon S3 bucket %s' % \
(uploadfile, bucket_name)
def percent_cb(complete, total):
sys.stdout.write('.')
sys.stdout.flush()
from boto.s3.key import Key
k = Key(bucket)
k.key = 'my test file'
k.set_contents_from_filename(testfile, cb=percent_cb, num_cb=10)
Na moim S3 Stworzyłem „katalogów”, jak to „Bucket/images/wakacje”. Wiem, że to tylko wirtualne katalogi.
Moje pytanie brzmi, w jaki sposób mogę zmodyfikować to przesyłanie specjalnie do katalogu wirtualnego bucket/images/holiday na S3 zamiast do katalogu głównego?
Och, to wielkie dzięki. – Jimmy
Jimmy, możesz wkleić kod do przesłanego pliku, który działał. Nie widzę, żebyś użył zmiennej "uploadfile" gdziekolwiek w poniższym kodzie – Murphy
Działa to również z ** multipart uploads ** '' 'mp = self._bucket.initiate_multipart_upload (bucket_key)' '' –