日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python request post json_python接口之request测试:以json格式发送post请求,.json方法,查看响应结果的情况...

發布時間:2025/4/16 python 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python request post json_python接口之request测试:以json格式发送post请求,.json方法,查看响应结果的情况... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

json和dict

python中的dict類型要轉換為json格式的數據需要用到json庫:

importjson = json.dumps() = json.loads()

需要注意的是python中并沒有json類型這一說法,通過json.dumps()轉換的字典對象,最后得到的是一個字符串對象,也就是說,在python中json格式的數據實際上就是一個字符串

>>> j = json.dumps()>>> type(j)

雖說json格式的數據在python中是以字符串的類型存在的,但是通過str()工廠函數所得到的結果同json.dumps()方法所得到的結果是不相同的

>>> d = {'a': 1, 'b': 2}>>> d_d = {"a": 1, "b": 2}>>> string =str(d)>>> string_d =str(d_d)>>> js =json.dumps(d)>>> js_d =json.dumps(d_d)>>> string ==string_d

True>>> js =js_d

True>>> string ==js

False>>>string"{'a': 1, 'b': 2}"

>>>js'{"a": 1, "b": 2}'

可以看出來string和js的區別在于引號。對于可以作為json.loads()參數對象的字符串,除了要滿足字典類型的格式外,所有的字符串對象必須是雙引號。

requests.post()

在通過requests.post()進行POST請求時,傳入報文的參數有兩個,一個是data,一個是json。

常見的form表單可以直接使用data參數進行報文提交,而data的對象則是python中的字典類型;

而在最新爬蟲的過程中遇到了一種payload報文,是一種json格式的報文,因此傳入的報文對象也應該是格式的;

這里有兩種方法進行報文提交:

importrequestsimportjson

url= "http://example.com"data= {'a': 1,'b': 2}

#1

data = json.dumps(datas)

headers = {'Content-Type': 'application/json'}response = requests.post(url, data=data, headers=headers)

#2-json參數會自動將字典類型的對象轉換為json格式

requests.post(url, json=data)

其它

在requests.get()方法中可以使用params參數來構建url 有時候請求得到的結果可能呈現亂碼的狀態,可以通過resp.encoding屬性查看網頁編碼方式,同時可以在獲取resp.text之前對resp.encoding='utf-8'賦值,這樣再次獲取的resp.text則會使用我們要求的編碼方式。

總結

以上是生活随笔為你收集整理的python request post json_python接口之request测试:以json格式发送post请求,.json方法,查看响应结果的情况...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。