downloading ora-pyref gif to test\ora-pyref gif as image downloading ora-lp -big jpg to test\ora-lp -big jpg as image downloading ora-lp gif to test\ora-lp gif as image downloading pyref -updates html to test\pyref -updates html as text downloading lp -updates html to test\lp -updates html as text downloading lp -examples html to test\lp -examples html as text downloading lp -examples zip to test\lp -examples zip as application done files downloaded this may take few moments to completedepending on your site' size and your connection speed (it' bound by network speed constraintsand it usually takes roughly two to three minutes for my site on my current laptop and wireless broadband connectionit is much more accurate and easier than downloading files by handthough the script simply iterates over all the remote files returned by the nlst methodand downloads each with the ftp protocol ( over socketsin turn it uses text transfer mode for names that imply text dataand binary mode for others with the script running this wayi make sure the initial assignments in it reflect the machines involvedand then run the script from the local directory where want the site copy to be stored because the target download directory is often not where the script livesi may need to give python the full path to the script file when run on server in telnet or ssh session windowfor instancethe execution and script directory paths are differentbut the script works the same way if you elect to delete local files in the download directoryyou may also see batch of "deleting local messages scroll by on the screen before any "downloading lines appearthis automatically cleans out any garbage lingering from prior download and if you botch the input of the remote site passworda python exception is raisedi sometimes need to run it again (and type more slowly) :\pp \internet\ftp\mirrordownloadflat py test password for lutz on home rmi netclean local directory firstconnecting traceback (most recent call last)file " :\pp \internet\ftp\mirror\downloadflat py"line in connection login(remoteuserremotepasslogin as user/password file " :\python \lib\ftplib py"line in login if resp[ =' 'resp self sendcmd('pass passwdfile " :\python \lib\ftplib py"line in sendcmd return self getresp(file " :\python \lib\ftplib py"line in getresp raise error_perm(respftplib error_perm login incorrect it' worth noting that this script is at least partially configured by assignments near the top of the file in additionthe password and deletion options are given by interactive inputsand one command-line argument is allowed--the local directory name to store transferring directories with ftplib