Я получил код на этом сайте для загрузки файлов из удаленного каталога с сервера.Теперь я хочу изменить этот код, чтобы он сравнивал файлы и списки, которые находятся в удаленном каталоге, а не в локальном каталоге.В нем перечислены необычные файлы между удаленным каталогом и локальным каталогом.Это возможно?Пожалуйста помоги.Заранее спасибо
import os
import pysftp
import socket
from stat import S_IMODE, S_ISDIR, S_ISREG
cnopts = pysftp.CnOpts()
cnopts.hostkeys = None
IP = "192.168.X.X"
myUsername = "user"
port = 22
myPassword = "password"
try:
with pysftp.Connection(host=IP, username=myUsername, password=myPassword, cnopts=cnopts) as sftp:
try:
r=str(socket.gethostbyaddr(IP))
print("connection successful with "+r)
def get_r_portable(sftp, remotedir, localdir, preserve_mtime=False):
for entry in sftp.listdir(remotedir):
remotepath = remotedir + "/" + entry
localpath = os.path.join(localdir, entry)
mode = sftp.stat(remotepath).st_mode
if S_ISDIR(mode):
try:
os.mkdir(localpath, mode=777)
except OSError:
pass
get_r_portable(sftp, remotepath, localpath, preserve_mtime)
elif S_ISREG(mode):
sftp.get(remotepath, localpath, preserve_mtime=preserve_mtime)
remote_path = input("enter the remote_path: ")
local_path = input("enter the local_path: ")
get_r_portable(sftp, remote_path, local_path, preserve_mtime=False)
except socket.herror:
print("Unknown host")
except:
print("connection failed")
Результатом должны быть необычные файлы, которые присутствуют в удаленном каталоге, а не в локальном каталоге.