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

时间:2013-05-12 10:42:53

标签: python date solr

我使用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

1 个答案:

答案 0 :(得分:1)

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

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

其中month_first是一个布尔值,告诉你要选择什么格式。

注意.date()电话; .strptime()将填写00:00:00表示该信息未被解析的时间; .date()只给出了日期部分。