o 0¦i¨Š ã @ sN d Z ddlZddlZddlmZ g d¢ZdZdZdZG dd „ d eƒZ G d d„ de ƒZ G dd „ d e ƒZG dd„ de ƒZG dd„ de ƒZ e eefZdZdZG dd„ dƒZzddlZW n eyc dZY nw ejZG dd„ deƒZe d¡ e eeejfZdadd„ Zdadd„ Zdd„ Zdd„ Z d d!„ Z!d)d$d%„Z"d&d'„ Z#e$d(kr¥e#ƒ dS dS )*aS An FTP client class and some helper functions. Based on RFC 959: File Transfer Protocol (FTP), by J. Postel and J. Reynolds Example: >>> from ftplib import FTP >>> ftp = FTP('ftp.python.org') # connect to host, default port >>> ftp.login() # default, i.e.: user anonymous, passwd anonymous@ '230 Guest login ok, access restrictions apply.' >>> ftp.retrlines('LIST') # list directory contents total 9 drwxr-xr-x 8 root wheel 1024 Jan 3 1994 . drwxr-xr-x 8 root wheel 1024 Jan 3 1994 .. drwxr-xr-x 2 root wheel 1024 Jan 3 1994 bin drwxr-xr-x 2 root wheel 1024 Jan 3 1994 etc d-wxrwxr-x 2 ftp wheel 1024 Sep 5 13:43 incoming drwxr-xr-x 2 root wheel 1024 Nov 17 1993 lib drwxr-xr-x 6 1094 wheel 1024 Sep 13 19:07 pub drwxr-xr-x 3 root wheel 1024 Jan 3 1994 usr -rw-r--r-- 1 root root 312 Aug 1 1994 welcome.msg '226 Transfer complete.' >>> ftp.quit() '221 Goodbye.' >>> A nice test that reveals some of the network dialogue would be: python ftplib.py -d localhost -l -p -l é N)Ú_GLOBAL_DEFAULT_TIMEOUT)ÚFTPÚerror_replyÚ error_tempÚ error_permÚerror_protoÚ all_errorsé é é c @ ó e Zd ZdS )ÚErrorN©Ú__name__Ú __module__Ú__qualname__© r r ú-/opt/alt/python310/lib64/python3.10/ftplib.pyr 9 ó r c @ r )r Nr r r r r r : r r c @ r )r Nr r r r r r ; r r c @ r )r Nr r r r r r <