У меня есть приведенный ниже скрипт Python Paramiko SFTP для загрузки файла из SFTP, в который включена часть имени файла и где загрузка файла имеет самую последнюю временную метку (на основе Как загрузить только последний файл с сервера SFTP с помощью Paramiko ). Однако я не уверен, как добавить обработку ошибок в код:
RemotePath='/WM_Universe/out/'
RemoteFilename='EDI_CAB_Red_Part_'
LocalPath='O:/Datafeed/Debt/WMDaten/PoolFactor/In/'
#Create Date LongDate/ShortDate
date = datetime.date.today()
ldate=(date.strftime ("%Y%m%d"))
latest = 0
latestfile = None
for fileattr in sftp.listdir_attr():
if fileattr.filename.startswith(RemoteFilename + ldate) and fileattr.st_mtime > latest:
latest = fileattr.st_mtime
latestfile = fileattr.filename
print (LocalPath + latestfile)
if latestfile is not None:
sftp.get(latestfile, LocalPath + latestfile)
Если файл недоступен с указанным выше именем и имеет самую последнюю временную метку, я получаю следующую ошибку:
Traceback (most recent call last):
File "C:/Users/username/PycharmProjects/SFTP.py", line 72, in <module>
print (LocalPath + latestfile)
TypeError: can only concatenate str (not "NoneType") to str
Я ценю любую помощь по внедрению соответствующей обработки ошибок для доступности / успешной загрузки файла или нет. Заранее спасибо