Python requests模塊安裝及使用教程圖解
requests模塊是一個(gè)用于訪問網(wǎng)絡(luò)的模塊,其實(shí)類似的模塊還有很多,不在一一在這里解釋。這么多的相似的模塊為什么都說只有這個(gè)好用呢,因?yàn)樗诵曰?。如果你學(xué)過urllib之類的模塊的話,比如urllib,對比一下就很清楚了。
1、requests模塊的安裝
requests模塊的安裝非常簡單,使用pip install requests命令即可安裝,我是在python的Terminal中直接安裝的,大家也可以在cmd命令窗口中進(jìn)行安裝。
2、requests模塊的導(dǎo)入
導(dǎo)入requests模塊時(shí),直接使用import requests 命令進(jìn)行導(dǎo)入即可,導(dǎo)入后就可以使用啦。
3、requests模塊的使用
在上面的requests導(dǎo)入中,已經(jīng)舉了一個(gè)最簡單的requests使用的例子,在實(shí)際的接口自動(dòng)化測試中,我們往往需要傳遞一些參數(shù),并獲取響應(yīng)的返回結(jié)果,下面我們將更詳細(xì)的講解requests的使用。
1)requests模塊的簡單使用
requests提供了如下幾種HTTP請求方式:GET、POST、HEAD、OPTIONS、PUT、PATCH、DELETE,我們舉幾個(gè)比較簡單的例子,示范代碼如下:
2)requests模塊發(fā)送請求時(shí)傳入?yún)?shù)
上面我們介紹了requests中常用的幾種請求方式,由于在工作中我們比較常用的是post和get方式進(jìn)行請求,這里我們只會為大家講解post和get兩種請求方式,其他的內(nèi)容如果有需要請大家自行補(bǔ)充。
get請求方式傳入?yún)?shù)
相信了解過http的小伙伴們都知道,get請求方式的參數(shù)一般都是寫在url之后,以問號與域名進(jìn)行分隔,多個(gè)參數(shù)之間使用&符號進(jìn)行拼接連接,下面我們?yōu)榇蠹遗e一個(gè)簡單的例子來進(jìn)行說明:
post請求方式傳入?yún)?shù)
在前面的學(xué)習(xí)中我們已經(jīng)了解到post請求多用于提交數(shù)據(jù),提交的數(shù)據(jù)中可能會包含如密碼、身份證號、驗(yàn)證碼等私密信息,這些信息如果直接拼接在url中是不安全的,那么post請求是怎樣傳遞參數(shù)的呢,post請求傳遞參數(shù)的方式有很多種,這里我們只介紹最常用的三種:
--application/x-www-form-urlencoded,form表單默認(rèn)的數(shù)據(jù)格式,提交的數(shù)據(jù)按照 key1=val1&key2=val2 的方式進(jìn)行編碼,key 和 val 都進(jìn)行了 URL 轉(zhuǎn)碼。大部分服務(wù)端語言都對這種方式有很好的支持。比如下面的http請求格式:
--application/json,現(xiàn)在越來越多的人把它作為請求頭,用來告訴服務(wù)端消息主體是序列化后的 JSON 字符串。服務(wù)端語言也有很多函數(shù)去解析JSON,使用JSON可以支持更加復(fù)雜的結(jié)構(gòu)化數(shù)據(jù)。比如下面的http請求格式:
--multipart/form-data,對用于在表單中上傳文件時(shí),也可以上傳普通數(shù)據(jù),只需要讓form的enctype等于multipart/form-data就可以了。比如下面的http請求格式:
下面我們來詳細(xì)了解一下使用requests來傳遞這三種類型的參數(shù):
--以form表單形式發(fā)送post請求,具體代碼實(shí)現(xiàn)如下所示:
-- 以json格式發(fā)送post請求,具體代碼實(shí)現(xiàn)如下所示:
--以multipart形式發(fā)送post請求,具體代碼實(shí)現(xiàn)如下所示:
4、封裝一個(gè)自己的requests模塊
在自動(dòng)化測試的過程中,我們會對多個(gè)接口進(jìn)行測試,而目前我接觸到的幾乎所有接口都是返回的json格式的數(shù)據(jù),所以封裝了一個(gè)模塊,返回json格式的數(shù)據(jù),方便在后面進(jìn)行調(diào)用,現(xiàn)在我把代碼粘在下面,有興趣的小伙伴們可以參考:
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python?matplotlib數(shù)據(jù)可視化圖繪制
這篇文章主要介紹了Python?matplotlib數(shù)據(jù)可視化圖繪制,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下2022-07-07Pandas過濾dataframe中包含特定字符串的數(shù)據(jù)方法
今天小編就為大家分享一篇Pandas過濾dataframe中包含特定字符串的數(shù)據(jù)方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-11-11解決python中的print函數(shù)自動(dòng)換行的問題
這篇文章主要介紹了解決python中的print函數(shù)自動(dòng)換行的問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-02-02python實(shí)現(xiàn)Virginia無密鑰解密
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)Virginia無密鑰解密,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-03-03Python中實(shí)現(xiàn)switch功能實(shí)例解析
這篇文章主要介紹了Python中實(shí)現(xiàn)switch功能實(shí)例解析,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-01-01python如何實(shí)現(xiàn)單鏈表的反轉(zhuǎn)
這篇文章主要介紹了python如何實(shí)現(xiàn)單鏈表的反轉(zhuǎn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-02-02深入了解python基于tkinter寫的畫圖項(xiàng)目
這篇文章主要為大家介紹了python基于tkinter寫的畫圖項(xiàng)目,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2021-12-12