python操作ftp

img


ftp上的文件名称大概是这样,有没有办法在python上能匹配到当前时间,然后获取整个文件的完整名称

你是需要和当前时间匹配的相关文件,然后进行下载是吗?
python操作ftp是没有问题的,如果是这个要求的话,直接在文件名中进行一下相应的判断就可以了,挺简单的,代码如下:

from ftplib import FTP
from datetime import datetime

# 连接到 FTP 服务器
ftp = FTP('ftp.example.com')
ftp.login(user='username', passwd='password')

# 切换到指定目录
ftp.cwd('/path/to/directory')

# 获取目录列表
directory_list = ftp.nlst()

# 获取当前日期
current_date = datetime.now().strftime('%Y%m%d')

# 循环遍历目录列表
for filename in directory_list:
    # 提取文件名中的日期部分
    file_date = filename.split('-')[1][:8]

    # 判断文件名中的日期和当前日期是否一致
    if file_date == current_date:
        # 下载文件
        local_file = open(filename, 'wb')
        ftp.retrbinary('RETR ' + filename, local_file.write)
        local_file.close()
        print(f'Downloaded file: {filename}')

# 关闭 FTP 连接
ftp.quit()

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^