TypeError: Object of type datetime is not JSON serializable
一、问题描述
我是在使用requests.post(url=douyin_url, json=singer_data)时,需要传入singer_data但是其中的一个字段是时间这个特殊字段。
如:{‘rankingDate’: ‘2019-06-20 17:05:03.483030’},其中这个值是通过datetime.datetime.now()获得的当前时间。结果执行时出现上面的错误。
二、原因分析
在python中出现了这个错误的根本原因是:json.dumps()不能对{}的datetime时间格式数据进行转化。
dumps的本来功能是将dict转化为str格式,并不支持转化时间,其实出现这个问题的解决方式很简单。
三、解决方式
data_dict[‘rankingDate’] = str((datetime.datetime.now()))
在特殊的时间格式数据加上str(),强行转换为字符串,然后再执行请求即可解决错误。
还没有评论,来说两句吧...