如何在dateparser库python中指定基准日期?

时间:2018-06-18 10:01:29

标签: python datetime date-parsing

我使用dateparser以各种模式解析日期。

1)2011年4月22日

2)8。März2018

3)5小时前

它运行得非常好,但是当我在其他日子对同一数据运行相同的脚本时出现问题,因为在'5小时前'的模式中,它需要今天的日期作为基准日期。

所以我甚至浏览了dateparser的源代码,查看了文档,但没有找到任何实质性的东西。

有人可以建议我们如何在dateparser中指定基准日期?

另外请建议我,如果有任何其他库比dateparse更好,以解决这个问题。

代码: -

res['snippet'] = '''Apr 22, 2011 ... Ingen Technologies Inc.'s (OTC:IGNT) former CEO'''
        date = res['snippet'].split('...')[0].strip()
        try:
            datee = dateparser.parse(date)
            if not datee > datetime.datetime.now():
                dataDict['date'] = datee.strftime('%d/%m/%Y')
            else:
                continue
        except:
            continue

1 个答案:

答案 0 :(得分:1)

>>> from dateparser import parse
>>> import datetime
>>> parse(u'5 hours ago', settings={'RELATIVE_BASE': datetime.datetime(2011, 4, 22, 4)})
datetime.datetime(2011, 4, 21, 23, 0)

dateparser文档有一个关于settings dict的部分,其中有一个键RELATIVE_BASE,这就是您所要求的(https://dateparser.readthedocs.io/en/v0.7.0/#settings