繁体   English   中英

ValueError:“2”是格式“%Y-%m-%d%20%H:%M:%S”的错误指令

[英]ValueError: '2' is a bad directive in format '%Y-%m-%d%20%H:%M:%S'

我正在尝试从 API 中获取数据,该数据以字符串格式发送诸如“2022-08-15%2013:00:00”之类的时间,如何将其转换为日期时间格式? 我努力了 -

start_time = "2022-08-15%2013:00:00"
start_dt_obj = datetime.strptime( str(start_time), r'%Y-%m-%d%20%H:%M:%S')

但这给出了一个错误 -

ValueError: '2' is a bad directive in format '%Y-%m-%d%20%H:%M:%S'

我该如何解决这个问题?

%20是一个 URL 编码的空格字符,因此2022-08-15%2013:00:00实际上应该解释为2022-08-15 13:00:00 您可以使用urllib.parse.unquote来实现

import datetime
from urllib.parse import unquote

start_time = "2022-08-15%2013:00:00"

start_dt_obj = datetime.datetime.strptime(unquote(start_time), r'%Y-%m-%d %H:%M:%S')
print(start_dt_obj)

暂无
暂无

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

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