August 2018
Intermediate to advanced
366 pages
10h 14m
English
ftplib is a powerful foundation on which we can provider an easier API to interact with an FTP server, both to store and retrieve files:
import ftplib class FTPCLient: def __init__(self, host, username='', password=''): self._client = ftplib.FTP_TLS(timeout=10) self._client.connect(host) # enable TLS try: self._client.auth() except ftplib.error_perm: # TLS authentication not supported # fallback to a plain FTP client self._client.close() self._client = ftplib.FTP(timeout=10) self._client.connect(host) self._client.login(username, password) if hasattr(self._client, 'prot_p'): self._client.prot_p() def cwd(self, directory): """Enter directory""" self._client.cwd(directory) def dir(self): """Returns list of files in current directory. ...