我正在尝试导航到FTP站点上的最新目录以下载CSV文件。对于此示例,我正在尝试选择OG_EWA_2018-06-02
链接。如何使用最大日期访问?谢谢
OG_EWA_2018-03-02 . . . Mar 02 10:52
OG_EWA_2018-04-03 . . . Apr 03 09:20
OG_EWA_2018-05-02 . . . May 02 09:17
OG_EWA_2018-06-02 . . . Jun 02 10:52
from ftplib import FTP
ftp = FTP('ftp')
ftp.cwd('OG_EWA')
ftp.retrlines('LIST')
print(ftp)
答案 0 :(得分:1)
您需要做的第一件事是将输出放入列表或其他可以处理它的内容,而不是将其转储到stdout。正如the docs解释的那样,你通过传递一个回调函数来做到这一点:
files = []
ftp.retrlines('LIST', files.append)
现在,你有一个行列表。由于文件名在日期之前是相同的,并且日期是YYYY-MM-DD格式,因此正常的字符串顺序是日期顺序,因此您不需要做任何花哨的事情;只需在其上调用max
:
latest = max(files)