我正在使用 requests 库从 API 调用中获取一些数据,但它总是给我提供错误的 JSON 格式。然而,当我这样做时json.loads(),当我将其保存\r\t\n在文件中时,它在我的控制台窗口中是干净的。
import requests
headers = {
'Connection': 'keep-alive',
'Accept': '*/*',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36',
'X-Requested-With': 'XMLHttpRequest',
'Sec-Fetch-Site': 'same-origin',
'Sec-Fetch-Mode': 'cors',
'Sec-Fetch-Dest': 'empty',
'Referer': 'https://webapps.illinois.gov/IWCC/CaseDocket/CaseSearch/ResBirthEnquiry?Name=ILLINOIS%20STATE%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20&type=R&caseDet=19_004185',
'Accept-Language': 'en-US,en;q=0.9',
}
params = (
('Name', 'ILLINOIS STATE '),
('type', 'R'),
('_', '1601313293712'),
)
response = requests.get('https://webapps.illinois.gov/IWCC/CaseDocket/CaseSearch/GetBirthInquiryDetails', headers=headers, params=params).json()
with open('casedockets.json','w') as outfile:
json.dump(response, outfile, indent=4)
它产生以下输出:
"\"{\\r\\n\\\"nameBirthDetails\\\":\\r\\n{\\\"nameBirth10\\\":{\\r\\n\\t \\\"petName\\\":\\\"MAURO, SEBASTIANO \\\", \\r\\n\\t \\\"respName\\\":\\\"ILLINOIS STATE \\\", \\r\\n\\t \\\"injuryDate\\\":\\\"11/21/2002\\\",\\r\\n\\t \\\"caseYear\\\":\\\"03\\\", \\r\\n\\t \\\"caseType\\\":\\\"WC\\\", \\r\\n\\t \\\"caseSeqNbr\\\":\\\"003884\\\", \\r\\n\\t \\\"dateFiled\\\":\\\"01/24/2003\\\", \\r\\n\\t \\\"petBirthDate\\\":\\\"03/13/1943\\\", \\r\\n\\t
^ 这只是 JSON 数据的一部分...我怎样才能使其成为有效的 JSON,以便提取我需要的密钥?
富国沪深
慕码人2483693
HUH函数
相关分类