Simple module to parse ISO 8601 dates This module parses the most common forms of ISO 8601 date strings (e.g. 2007-01-14T20:34:22+00:00) into datetime objects. >>> import iso8601 >>> iso8601.parse_date("2007-01-25T12:00:00Z") datetime.datetime(2007, 1, 25, 12, 0, tzinfo=) >>> See the LICENSE file for the license this package is released under. If you want more full featured parsing look at: - http://labix.org/python-dateutil - python-dateutil Home ==== * https://bitbucket.org/micktwomey/pyiso8601/ This was originally hosted at https://code.google.com/p/pyiso8601/ References ========== * http://www.cl.cam.ac.uk/~mgk25/iso-time.html - simple overview * http://hydracen.com/dx/iso8601.htm - more detailed enumeration of valid formats. Testing ======= 1. pip install -r dev-requirements.txt 2. tox Changes ======= 0.1.5 ----- * Wow, it's alive! First update since 2007 * Moved over to https://bitbucket.org/micktwomey/pyiso8601 * Add support for python 3. https://code.google.com/p/pyiso8601/issues/detail?id=23 (thanks to zefciu) * Switched to py.test and tox for testing * Make seconds optional in date format ("1997-07-16T19:20+01:00" now valid). https://bitbucket.org/micktwomey/pyiso8601/pull-request/1/make-the-inclusion-of-seconds-optional-in/diff (thanks to Chris Down) * Correctly raise ParseError for more invalid inputs (https://bitbucket.org/micktwomey/pyiso8601/issue/1/raise-parseerror-for-invalid-input) (thanks to manish.tomar) 0.1.4 ----- * The default_timezone argument wasn't being passed through correctly, UTC was being used in every case. Fixes issue 10. 0.1.3 ----- * Fixed the microsecond handling, the generated microsecond values were way too small. Fixes issue 9. 0.1.2 ----- * Adding ParseError to __all__ in iso8601 module, allows people to import it. Addresses issue 7. * Be a little more flexible when dealing with dates without leading zeroes. This violates the spec a little, but handles more dates as seen in the field. Addresses issue 6. * Allow date/time separators other than T. 0.1.1 ----- * When parsing dates without a timezone the specified default is used. If no default is specified then UTC is used. Addresses issue 4.