CkPython
CkPython
FTP Download Binary File to a Stream
See more FTP Examples
Demonstrates how to FTP download a binary file to a Chilkat stream.Note: This example requires Chilkat v9.5.0.67 or greater.
Chilkat CkPython Downloads
import sys
import chilkat
success = False
# This example assumes the Chilkat FTP2 API to have been previously unlocked.
# See FTP2 Unlock Sample for sample code.
ftp = chilkat.CkFtp2()
ftp.put_Hostname("www.my-ftp-server.com")
ftp.put_Username("mFtpLogin")
ftp.put_Password("myFtpPassword")
ftp.put_AuthTls(True)
ftp.put_Passive(True)
# Connect and login to the FTP server using TLS.
success = ftp.Connect()
if (success != True):
print(ftp.lastErrorText())
sys.exit()
# We'll read the incoming data chunk-by-chunk and write to an output file.
fac = chilkat.CkFileAccess()
success = fac.OpenForWrite("qa_output/penguins2.jpg")
if (success != True):
print(fac.lastErrorText())
sys.exit()
streamObj = chilkat.CkStream()
# Create a task to do the FTP download.
# t is a CkTask
t = ftp.GetFileToStreamAsync("penguins2.jpg",streamObj)
if (ftp.get_LastMethodSuccess() != True):
print(ftp.lastErrorText())
sys.exit()
# Start the task in a background thread.
t.Run()
bd = chilkat.CkBinData()
while streamObj.get_EndOfStream() != True :
# Get the next chunk of JPG bytes.
streamObj.ReadBd(bd)
# Do something with it..
# In this simple example, we'll just write to the file.
fac.FileWriteBd(bd,0,0)
# Clear for the next read.
bd.Clear()
fac.FileClose()
print("Success.")