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

How to specify base date in dateparser library python?

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

1) 2011 年 4 月 22 日

2) 8. 2018 年三月

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
>>> 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 字典的,它有一个键 RELATIVE_BASE,这就是您要问的 (https://dateparser.readthedocs.io/en/v0.7.0/#settings)