I want to get the file from FTP server to local as soon as new file is added in directory on FTP.
I know changes in the directory at local machine can be seen using watchdog observer.
But I want to check for the change in the directory (addition of new file, deletion on file) at FTP server.
How to achieve this?
Code I am using to check change in the directory on local machine:
from watchdog.observers import Observer
from watchdog.events import FileSystemEventHandler
import ftplib
import time
class ExampleHandler(FileSystemEventHandler):
def on_created(self, event):
print "Got event for file %s" % event.src_path
session = ftplib.FTP('address','username','password')
path='/directory/to/check'
session.cwd(path)
observer = Observer()
event_handler = ExampleHandler()
observer.schedule(event_handler, path_of_the_directory)
observer.start()
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
observer.stop()
observer.join()