我正在尝试从rest api获取一些数据并将JSON保存到txt文件中。这是我的工作:
#random rest api
a = 'https://thiswouldbemyurl.com'
#urllib3 + poolmanager for requests
import urllib3
http = urllib3.PoolManager()
import json
r = http.request('GET', a)
json.loads(r.data.decode('utf-8'))
with open('data.txt', 'w') as f:
json.dump(data, f, ensure_ascii=False)
我的json.load
已收到错误消息。我做错了什么?
编辑:这就是JSON的样子
{
"success":true,
"data":[
{
"id":26,
"name":"A",
"comment":"",
"start_time_plan":null,
"start_time_actual":"2016-09-13 00:00:00",
"start_time_delta":null,
"start_time_score":null,
"start_time_score_achievement":null,
"start_time_traffic_light":null,
"end_time_plan":null,
"end_time_actual":"2016-09-13 00:00:00",
"end_time_delta":null,
"end_time_score":null,
"end_time_score_achievement":null,
"end_time_traffic_light":null,
"status":0,
"measure_schedule_revision_id":63,
"responsible_user_id":3,
"created_time":"2016-09-13 11:29:14",
"created_user_id":3,
"modified_time":"2016-09-21 16:33:41",
"modified_user_id":3,
"model":"Activity"
}
答案 0 :(得分:1)
听起来你正试图json.load(...)
实际上不是JSON的东西。
查看您正在使用的网址,https://jsonplaceholder.typicode.com/
会返回HTML而不是JSON。
如果您使用 返回JSON的https://jsonplaceholder.typicode.com/posts
之类的内容,那么该特定错误就会消失。