Python для начинающих
Подписаться на эту рубрику по RSS
Клиентская часть в Python реализуется при помощи модуля ftplib. Использовать непосредственно данный модуль на практике приходится не так часто, в связи с тем, что есть другой модуль urllib, имеющий более высокоуровневый интерфейс. Модуль ftplib может пригодится когда в вашей программе необходим более обширный контроль над низкоуровневыми FTP соединениями. Для более понятной работы с модулем ftplib советуем поближе изучить протокол FTP.
Модуль определяет единственный класс, используемый для создания FTP-соединения:
con = FTP(хост, ftp-пользователь, пароль пользователя, учетная запись, время ожидания)
После вызова класса FTP, создается объект представляющий FTP-соединение. Первый аргумент хост является обязательным в нем передается имя хоста, это может быть IP или название домена. Остальные параметры являются необязательными, если хост не требует введение аутентификационных данных.
Вызывая класс без аргументов, чтобы установить соединение, потребуется вызвать метод connect() и login(). При указании лишь аргумента хост, метод connect() будет вызываться автоматически в конструкторе. Тот же случай при указании данных пользователя сразу при вызове класса FTP, метод login() будет вызван автоматически. Последний аргумент "время ожидания" указывается в секундах, если по истечению данного срока соединение не будет установлено класс закончит работу.
Методы класса FTP
con.abort()
Отправляет запрос для прерывания попытки продолжающуюся передачу файлов. В зависимости от настроек и особенностей удаленного сервера, результат данного метода может не дать нужного результата
con.close()
Закрывает FTP-соединение. После выполнения данного метода, никакие операции больше не могут выполнятся в сторону объекта con.
con.connect(хост, порт, время ожидания)
Открывает новое FTP соединение для указанного хоста, подключаясь к указанному порту (обычно это порт 21 или в случае SFTP 22). Если данные подключения уже ранее передавались конструктору FTP, нет необходимости вызывать метод con.connect()
con.cwd(путь к папке)
Выполняет переход по указанному пути тем самым изменяя текущий рабочий каталог.
con.delete(путь до файла)
Удаляет указанный файл с сервера.