监控远程FTP目录

问题描述 投票:0回答:2

我只能通过 FTP 访问远程服务器上的目录,并且希望在新文件出现在目录中时立即获取它们的内容。

有没有像 FAM for Python 这样的东西可以让我通过 FTP 监控新文件?

python ftp
2个回答
11
投票

如果可以选择轮询服务器:

from ftplib import FTP
from time import sleep

ftp = FTP('localhost')
ftp.login()

def changemon(dir='./'):
    ls_prev = set()

    while True:
        ls = set(ftp.nlst(dir))

        add, rem = ls-ls_prev, ls_prev-ls
        if add or rem: yield add, rem

        ls_prev = ls
        sleep(5)

for add, rem in changemon():
    print('\n'.join('+ %s' % i for i in add))
    print('\n'.join('- %s' % i for i in remove))

ftp.quit()

0
投票

这不是已弃用吗? 看来 FTP 的轮询已经改变了

© www.soinside.com 2019 - 2024. All rights reserved.