Моя главная цель - в любое время проверить FTP-сервер на наличие новых файлов, а затем сгенерировать файл .txt, в который скопированы только новые файлы. Если новых файлов нет, то ничего не возвращается. Вот что у меня так далеко. Я начал с копирования файлов с сервера в oldlist.txt, затем подключился к FTP-сайту и сравнил данные из newlist.txt и oldlist.txt, а также различия, которые мне нужны во временном файле FTP changes.txt. Каждый раз, когда я подключаюсь, я изменяю newlist.txt и делаю его oldlist.txt, чтобы я мог сравнить его при следующем подключении. Есть лучший способ сделать это? Мои списки, кажется, никогда не меняют данные каждый раз. Извините, если это сбивает с толку, спасибо.
import os
filename = "oldlist.txt"
testing = "newlist.txt"
tempfilename = "Temporary FTP file Changes.txt"
old = open(filename, "r")
oldlist = old.readlines()
oldlist.sort()
from ftplib import FTP
ftp = FTP("ftpsite", "username", "password")
ftp.set_pasv(False)
newlist = []
ftp.dir(newlist.append)
newlist.sort()
ftp.close()
bob = open(testing, "w")
for nl in newlist:
bob.write(nl + "\n")
hello = open(tempfilename, "w")
for c in newlist:
if c not in oldlist:
hello.write(c + "\n")
bob.close()
old.close()
hello.close()
os.remove("oldlist.txt")
os.rename("newlist.txt", "oldlist.txt")