239 recognized. |
239 recognized. |
240 """ |
240 """ |
241 try: |
241 try: |
242 month, day, year = [int(part) for part in date.split("-")] |
242 month, day, year = [int(part) for part in date.split("-")] |
243 year = 1900 + year if year >= 70 else 2000 + year |
243 year = 1900 + year if year >= 70 else 2000 + year |
244 except (ValueError, IndexError): |
244 except (IndexError, ValueError): |
245 raise FtpDirLineParserError("illegal date string '{0}'".format(month)) |
245 raise FtpDirLineParserError("illegal date string '{0}'".format(month)) |
246 try: |
246 try: |
247 hour, minute, am_pm = time[0:2], time[3:5], time[5] |
247 hour, minute, am_pm = time[0:2], time[3:5], time[5] |
248 hour = int(hour) |
248 hour = int(hour) |
249 minute = int(minute) |
249 minute = int(minute) |
250 except (ValueError, IndexError): |
250 except (IndexError, ValueError): |
251 raise FtpDirLineParserError("illegal time string '{0}'".format(month)) |
251 raise FtpDirLineParserError("illegal time string '{0}'".format(month)) |
252 if hour == 12 and am_pm == "A": |
252 if hour == 12 and am_pm == "A": |
253 hour = 0 |
253 hour = 0 |
254 if hour != 12 and am_pm == "P": |
254 if hour != 12 and am_pm == "P": |
255 hour += 12 |
255 hour += 12 |