in container-filetransfer/cloud-transfer.py [0:0]
def connect_ftp(url):
"""
Connects to an FTP server, defaulting to anonymous auth if no credentials
are provided.
"""
components = urlparse(url)
# Initialize connection
session = ftplib.FTP_TLS() if components.scheme == 'ftps' else ftplib.FTP()
session.connect(components.hostname, components.port or 21)
# Login, anonymously if required
if components.username:
session.login(components.username, components.password)
else:
session.login()
# Setup secure data connection if necessary
if isinstance(session, ftplib.FTP_TLS):
session.prot_p()
return session