繁体   English   中英

Python strptime 不解析导入的数据 CSV

[英]Python strptime not parsing data from imported CSV

我正在尝试导入包含“created_at”日期的行的 CSV。 我收到循环错误。

我当前尝试导入的日期字符串是“2020-05-14 16:10:21.360520+00:00”,它位于我的 csv 文件中的第 [2] 行。

这是我尝试使用的代码:

for line in import_csv:
    if line:
        import_data = BlogLink()
        created_at = line[2].split('.')
        import_data.created_at = datetime.datetime.strptime(created_at[0], "YYYY-MM-DD HH:MM:SS")

这给了我错误:

time data '2020-05-14 16:10:21' does not match format 'YYYY-MM-DD HH:MM:SS'

我的替代代码是这样的:

for line in import_csv:
    if line:
        import_data = BlogLink()
        created_at = line[2].split('.')
        import_data.created_at = datetime.datetime.strptime(created_at[0], "%Y-%m-%d %H:%M:%S")

这给了我错误:

time data '' does not match format '%Y-%m-%d %H:%M:%S'

(即它甚至不尝试包括时间数据)。 我在这里做错了什么?

PEBCAK 在这里。 我的问题是 import_data.last_edited 的后续行对于未编辑的对象有空行。 我已经修补了该字段为空时跳过的代码。

for line in import_csv:
    if line:
        import_data = BlogLink()
        import_data.description = line[0]
        import_data.link = line[1]
        import_data.created_by = request.user
        import_data.created_at = datetime.datetime.strptime(line[2], '%Y-%m-%d %H:%M:%S.%f%z')
        if line[3]:
            import_data.last_edited = datetime.datetime.strptime(line[3], '%Y-%m-%d %H:%M:%S.%f%z')
        else:
            import_data.last_edited = None
        import_data.save()

是工作代码。

暂无
暂无

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

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