Python從http請求json資料並格式化輸出

2021-07-30 22:40:14 字數 745 閱讀 3260

#設定header資料

conn.request("get", url,"",header)

r1 = conn.getresponse()

print(r1.status, r1.reason)

data = eval(r1.read().decode())

data = json.dumps(data,indent=4,separators=(',', ': '),ensure_ascii=false)

print(data)

這裡有幾個要注意的地方

1:httpresponse中讀取出來的資料是bytes型別,所以不能直接使用json.dumps去格式化,必須先轉為字串型別,直接使用bytes的decode後,會發現結果中帶有轉義字元'\',所以這裡使用eval將轉義去掉,並且eval可以吧unicode字元轉為漢字,就是說 eval(r1.read().decode()) 執行結果中已經是漢字了

2:如果直接使用json.dumps轉換,你會發現,之前的中文又變成字元了,關鍵在於ensure_ascii,要設定為false(預設是false),否則中文就會被ascii編碼了

python 傳送http請求

測試用cgi,名字為test.py,放在apache的cgi bin目錄下 usr bin python import cgi def main print content type text html n form cgi.fieldstorage if form.has key servicec...

python 模擬Http請求

先簡單宣告一下http請求中post和get之間乙個簡單的區別 get請求的資料會附在url之後 就是把資料放置在http協議頭中 以?分割url和傳輸資料,引數之間以 相連,如 login.action?name hyddd password idontknow verify e4 bd a0 e...

python模擬http請求

下文主要講述如何利用python自帶的庫模擬http請求,為以後利用python做api測試做準備。只講述模擬http的過程,具體到自己用的時候,要以自己的應用為準做出適當的調整。coding utf 8 相信這句大家都懂的,不解釋 匯入需要的python模組httplib,用來模擬提交http請求...