2

在 Python 中,有多个 DateTime 解析器可以自动解析日期字符串,而无需证明日期时间格式。例如DateParserDateUtils。但是,其中任何一个都没有返回解析日期的格式的选项。应该做些什么来获得自动解析器解析日期的格式,如下例所示?例如 parse("2019/05/20") --> [datetime(2019,5,20,0,0) , "%Y/%m/%d"]

4

2 回答 2

1

如果您希望格式字符串能够以相同的方式格式化 datetime 对象,我认为这是不可能的,因为这些解析器(至少是 dateparser)可以解析根本无法表示为格式字符串的日期。

不过,它有一个功能请求。也许它可以以某种方式实现,或者针对所有可能输入的一个子集。

如果您希望将此用于调试目的,以了解给定字符串如何导致给定日期时间,我认为目前也没有简单的方法。但是,如果您得到意想不到的结果,您可以使用一些设置来影响不同的解析方面以获得所需的结果。日期顺序、输入格式字符串和语言环境会产生很大的不同。

于 2019-12-11T11:29:05.220 回答
0

如果您查看这些库的源代码,您会发现它们是如何解析日期的。

例如,DataParser正在使用正则表达式和日期时间字符串格式化指令的组合。这是他们解析器的链接:https ://github.com/scrapinghub/dateparser/blob/master/dateparser/parser.py

于 2019-09-01T00:29:17.953 回答