繁体   English   中英

如何使用 Python 将日期字符串转换为 Solr 日期格式?

[英]How to convert date string to Solr date format using Python?

我正在使用 Solr 和 Python 为我的文件编制索引,并且我正在处理日期。 我有一个字符串日期,如30/01/2013 (ddmmyyy) 和01/30/2013 (mmddyyy)。 如何将这些类型的日期转换为 Solr 日期格式?

我一直在使用这样的转换

dt = datetime.combine(item[index_field], time())
value_str = dt.isoformat() + 'Z'

但收到错误消息combine() argument 1 must be datetime.date, not str

您必须首先将字符串解析为日期(使用datetime.datetime.strptime()类方法然后time()结合:

format = '%m/%d/%Y' if month_first else '%d/%m/%Y'
datetime.combine(datetime.strptime(item[index_field], format), time())

其中month_first是一个布尔值,它告诉您要选择的格式。

正式地, datetime.combine()datetime.date对象作为第一个参数,但实际上它也接受datetime.datetime实例。 (否则,您必须添加.date()调用以从.strptime()返回的datetime.datetime实例中获取datetime.date对象)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM