CkPython
CkPython
Bandwidth Throttled Asynchronous HTTP Upload
See more Upload Examples
Demonstrates how to do an HTTP upload asynchronously in a background thread with limiting the rate to an approximate number of bytes/second. The only difference between this example and one without bandwidth throttling is that the BandwidthThrottleUp property is set.Chilkat CkPython Downloads
import chilkat
success = False
upload = chilkat.CkUpload()
# Specify the page (ASP, ASP.NET, Perl, Python, Ruby, CGI, etc)
# that will process the HTTP Upload.
upload.put_Hostname("www.mywebserver.com")
upload.put_Path("/receiveUpload.aspx")
# Add one or more files to be uploaded.
upload.AddFileReference("file1","dude.gif")
upload.AddFileReference("file2","pigs.xml")
upload.AddFileReference("file3","sample.doc")
# Set the BandwidthThrottleUp property to throttle to approx 64K/second
upload.put_BandwidthThrottleUp(65536)
# Begin the HTTP upload in a background thread:
success = upload.BeginUpload()
if (success != True):
print(upload.lastErrorText())
else:
print("Upload started...")
# Wait for the upload to finish.
# Print the progress as we wait...
while (upload.get_UploadInProgress() == True) :
# We can abort the upload at any point by calling:
# upload.AbortUpload();
# Display the percentage complete and the number of bytes uploaded so far..
# The total upload size will become set after the upload begins:
print(str(upload.get_PercentUploaded()) + "% " + str(upload.get_NumBytesSent()) + "/" + str(upload.get_TotalUploadSize()))
# Sleep 2/10ths of a second.
upload.SleepMs(200)
# Did the upload succeed?
if (upload.get_UploadSuccess() == True):
print("Files uploaded!")
else:
print(upload.lastErrorText())