FTPES - Python 中通过显式 TLS/SSL 的 FTP
问题描述
我需要一个 python 客户端来执行 FTPES(显式),有没有人使用任何可以执行此操作的 python 包的经验.
I need a python client to do FTPES (explicit), does anyone has experience with any python package that can do this.
我无法在 python 中执行此操作,但可以使用 FileZilla 等工具连接到 FTP 服务器
I am not able to do this in python, but can connect to FTP server using tools like FileZilla
谢谢
解决方案
本地 Python 很好地支持 FTP-SSL Explicit.建立连接后,您可以使用所有标准的 ftplib 命令.更多可以在以下位置找到:http://docs.python.org/2/library/ftplib.html#ftplib.FTP_TLS
FTP-SSL Explicit is well supported by native Python. After setting up the connection, you can use all the standard ftplib commands. More can be found at: http://docs.python.org/2/library/ftplib.html#ftplib.FTP_TLS
这是一个下载文件的基本示例:
Here's a basic example for downloading a file:
from ftplib import FTP_TLS
ftps = FTP_TLS('ftp.MySite.com')
ftps.login('testuser', 'testpass') # login anonymously before securing control channel
ftps.prot_p() # switch to secure data connection.. IMPORTANT! Otherwise, only the user and password is encrypted and not all the file data.
ftps.retrlines('LIST')
filename = 'remote_filename.bin'
print 'Opening local file ' + filename
myfile = open(filename, 'wb')
ftps.retrbinary('RETR %s' % filename, myfile.write)
ftps.close()
相关文章