Я хотел бы перемещаться между двумя разными папками на одном и том же FTP-сервере в той же самой FTP-сессии, используя ftplib Python.Перемещение между различными папками на FTP-сервере с помощью Python
базовый сценарий я написал выглядит следующим образом (gbname и gffname назначены):
ensembl = FTP('ftp.ensemblgenomes.org')
ensembl.login()
ensembl.cwd("pub/fungi/current/genbank/")
ensembl.retrbinary('RETR ' + gbname, open(gbname, 'wb').write)
ensembl.cwd("pub/fungi/current/gff/")
ensembl.retrbinary('RETR ' + gffname, open(gffname, 'wb').write)
ensembl.quit()
Этот скрипт tracebacks на втором Дов со следующей ошибкой «ftplib.error_perm: 550 Не удалось изменить каталог.» ,
Я понимаю, почему это tracebacks там и я могу решить эту проблему путем проведения двух различных сеансов FTP следующим образом:
ensemblgb = FTP('ftp.ensemblgenomes.org')
ensemblgb.login()
ensemblgb.cwd("pub/fungi/current/genbank/")
ensemblgb.retrbinary('RETR ' + gbname, open(gbname, 'wb').write)
ensemblgb.quit()
ensemblgff = FTP('ftp.ensemblgenomes.org')
ensemblgff.login()
ensemblgff.cwd("pub/fungi/current/gff/")
ensemblgff.retrbinary('RETR ' + gffname, open(gffname, 'wb').write)
ensemblegff.quit()
Однако, мне было интересно ли, когда я изменить каталог в «Паб/грибы/current/genbank/", можно было бы поменять его на" pub/fungi/current/gff/"позже (возможно, проходя через корневую папку между?) в том же сеансе FTP, не закрывая его и не открывая новый ,
Приветствия,
Nicola
Вы пробовали? Причина, по которой вам нужно 2 FTP-подключения для одновременного отображения двух разных каталогов, - это то, как работает FTP. Но ничто не мешает вам ходить по дереву каталогов (части, к которым вы разрешаете доступ), как вам угодно, с помощью любого соединения. – Chewie