FTP Date Format Function
samuraisam
samuraiblog at gmail.com
Fri Jun 15 11:09:00 EDT 2007
On Jun 14, 10:53 pm, billiejoex <gne... at gmail.com> wrote:
> On 14 Giu, 19:25, samuraisam <samuraib... at gmail.com> 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
Ah, well if there isn't LST and if NLST doesn't return dates that's
OK, I wasn't sure at the time I authored the post. :)
More information about the Python-list
mailing list