On 14 Giu, 19:25, samuraisam <[EMAIL PROTECTED]> wrote: > FTP LST/LIST/NLST date field formatting function for all those seekers > out there... > > import time > import datetime > > def ftpdateformat(value): > """Formats dates from most FTP servers""" > if ":" in value: # within 6 months > return datetime.datetime( > *time.strptime( # have to guess this calculation > "%s %s" % (value, datetime.datetime.now().year), > "%b %d %H:%M %Y" > )[0:5] > ).strftime("%B %d, %Y %H:%M") > else: # before six months > return datetime.datetime( > *time.strptime(value, "%b %d %Y")[0:5] > ).strftime("%B %d, %Y") > > I'm not sure if there is a proper algorithm for deciding on a proper > year within the last 6 months as it isn't given by most FTP servers. > I'd love to amend the function with the correct solution. :)
I didn't well understand your question, anyway... - FTP got no LST command. What's that? - NLST should return filenames only: returned output doesn't contain file sizes, last modification time values or whatever. - RFC959 gives no specifications about *how* LIST command output should be formatted. Depending on the type of server you're talking to you could find unix/"ls -l"-like format outputs, DOS-like ones or something completely different and your code does not cover all of them. Take a look at: http://effbot.org/downloads/#ftpparse -- http://mail.python.org/mailman/listinfo/python-list