CkPython
CkPython
S3 Find Bucket Region
See more Amazon S3 (new) Examples
Demonstrates how to find out the region of an S3 bucket.Chilkat CkPython Downloads
import sys
import chilkat
success = False
# This requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
rest = chilkat.CkRest()
# Connect to the Amazon AWS REST server using the correct region (in this example, "us-west-2")
bTls = True
port = 443
bAutoReconnect = True
success = rest.Connect("s3.amazonaws.com",port,bTls,bAutoReconnect)
# Provide AWS credentials for the REST call.
authAws = chilkat.CkAuthAws()
authAws.put_AccessKey("AWS_ACCESS_KEY")
authAws.put_SecretKey("AWS_SECRET_KEY")
authAws.put_ServiceName("s3")
success = rest.SetAuthAws(authAws)
# The bucket name we want to know about is set in the HOST header.
# In this example, we want to find the region for the "chilkat.qa" bucket.
rest.put_Host("chilkat.qa.s3.amazonaws.com")
# Send the GET request to query the bucket location.
strResult = rest.fullRequestNoBody("GET","/?location")
if (rest.get_LastMethodSuccess() != True):
print(rest.lastErrorText())
sys.exit()
responseStatusCode = rest.get_ResponseStatusCode()
print("Response status code = " + str(responseStatusCode))
if (responseStatusCode != 200):
print(rest.responseHeader())
print(strResult)
print("Failed.")
sys.exit()
print(strResult)
# The result contains XML like this:
# <?xml version="1.0" encoding="UTF-8"?>
# <LocationConstraint xmlns="http://s3.amazonaws.com/doc/2006-03-01/">us-west-2</LocationConstraint>
# Get the "us-west-2" from the XML
xml = chilkat.CkXml()
success = xml.LoadXml(strResult)
print("region = " + xml.content())