[英]python unable to parse JSON Data
我無法使用python解析JSON數據。
網頁網址返回JSON數據
import requests
import json
BASE_URL = "https://www.codechef.com/api/ratings/all"
data = {'page': page, 'sortBy':'global_rank', 'order':'asc', 'itemsPerPage':'40' }
r = requests.get(BASE_URL, data = data)
receivedData = (r.text)
print ((receivedData))
當我打印此文件時,我得到了大文本,當我使用https://jsonlint.com/進行驗證時,它顯示了VALID JSON
后來我用
import requests
import json
BASE_URL = "https://www.codechef.com/api/ratings/all"
data = {'page': page, 'sortBy':'global_rank', 'order':'asc', 'itemsPerPage':'40' }
r = requests.get(BASE_URL, data = data)
receivedData = (r.text)
print (json.loads(receivedData))
當我使用https://jsonlint.com/驗證較大的打印文本時,它顯示了無效的JSON
即使我不打印並直接使用數據。 它工作正常。 因此,我確定即使在內部也無法正確加載。
是python無法將文本正確解析為JSON?
簡而言之, json.loads
從Json(事物,objcet,數組等)轉換為Python對象-在這種情況下為Json字典。 當您打印時,它將打印為命令式,因此使用單引號引起來。
有效地可以擴展您的代碼:
some_dictionary = json.loads(a_string_which_is_a_json_object)
print(some_dictionary)
為了確保您要打印json-safe,您需要使用json.dumps
重新編碼
當您使用python的json.loads(text)
它將返回一個python字典。 當您打印該詞典時,它不是json格式。
如果要json輸出,則應使用json.dumps(json_object)
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.