FTP : get dir name with space caracters embedded + is ther something quicker than LIST

Matt Russell matt at teaphoo.fsnet.co.uk
Fri Apr 4 17:32:51 EST 2003


I think FTP.nlst([ directory ])
solves your problem.
you may be able to use this method in conjunctio n with os.path.walk
to achieve your goal.
Matt

s.thuriez at laposte.net (sebastien) wrote in message news:<b1ab591.0304030143.52422a3e at posting.google.com>...
> Hi ,
> 
> I have 2 problems regarding FTP methods.
> 
> 
> My GOAL :
> ---------
> 
> I am looking for a specific file on a huge ftp server. The structure
> of the ftp server is not known. I have to determine which are
> directories and which are files so that it can recursively go into the
> subdirectories to scan the files (it is multi threaded).
> 
> It is working well but I have 2 problems.
> 
> 
>  My trouble :
> -----------------
> 
> It am using the ftp.retrlines('LIST',liste.append)
> and analyse which one are directories since they have the letter d at
> the beginning of the line.
> 
> 1) The LIST METHOD IS EXTREMLY SLOW !!!
> 
> In certain directories there is thousand of file and the LIST method
> is extremely slow.
> It works but is there other method to get the directories without
> having to do a LIST ?
> 
> 2) DIRECTORY NAME WITH SPACES  
> 
> LIST is slow but it works. One other problem is the directory name in
> which there is spaces : like
> "data file today".
>  I can do a :
> elements= line.split(" "), 
> 
> but the data before my directory name has not the same format : for
> example :
> 
> .....
> may 22   2001     name of directory
> mar 15    02:00   other directory name
> .....
> 
> I do not know how to get the directory name simply.
> 
> One method would be to get a len(elements) and if len(elements) > 9
> for example on my server. All the last elements would be part of
> directory name. It is not so clean since it may depend on the FTP
> server configuration.
> 
> Do you have any idea ?
> 
> Thanks for having taken the time to read my mail.
> 
> Sebastien.




More information about the Python-list mailing list