在Python中解析人格式日期范围

rob*_*ntw 7 python datetime parsing date

我有一些人类日期范围,字符串,如下所示:

22-24th April 2012
14-23 July
20th June - 5th July
Run Code Online (Sandbox Code Playgroud)

我想在Python中解析这些,以便最终得到两个日期时间对象:一个用于开始,一个用于结束.

有没有可以让我这样做的模块?我已经尝试了parsedatetime,看起来它evalRange内部的功能可能会这样做(请参阅http://code-bear.com/code/parsedatetime/docs/index.html获取文档),但它似乎没有解析任何东西根本,只返回当前日期/时间两次.

有任何想法吗?

rob*_*ntw 8

我最后编写了一个Python模块来实现这一点,我现在已经开源了.它可以在Github上下载,有文档,可以从PyPI安装,使用:

pip install daterangeparser
Run Code Online (Sandbox Code Playgroud)

对于那些感兴趣的人来说,该模块的工作原理是使用PyParsing创建一个完整的解析器,这是一个很棒的(非常易于使用的)工具.