溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

python中requests怎么優(yōu)化接口調(diào)用

發(fā)布時間:2021-09-07 13:37:01 來源:億速云 閱讀:175 作者:小新 欄目:編程語言

這篇文章將為大家詳細(xì)講解有關(guān)python中requests怎么優(yōu)化接口調(diào)用,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

使用Python進(jìn)行網(wǎng)絡(luò)編程時,經(jīng)常使用requests模塊進(jìn)行http接口調(diào)用。

1、如果只是很少的接口調(diào)用,使用傳統(tǒng)的requests.post()或者requests.get()就能滿足要求。

但是,如果涉及多次界面調(diào)用,可能會遇到程序執(zhí)行時間長的效率問題。

2、為了提高程序執(zhí)行效率,降低服務(wù)器壓力,可以使用長連接,節(jié)省頻繁的tcp連接握手和揮手過程。

實例

def keep_alive():
    """
    實例化一個長連接對象
    :return:
    """
    s = requests.Session()
    return s
 
def q_inst(func, obj_id='host', field='bk_host_innerip', value=''):
headers = {"Content-Type": "application/json"}
    data = {
        "bk_obj_id": obj_id,
        "bk_supplier_account": "0",
        "page": {
            "start": 0,
            "limit": 10
        },
        "condition": {
            obj_id: [{
                "field": field,
                "operator": "$eq",
                "value": value
            }]
        }
    }
    res_p = func.post('https://***.***.***/api/c/compapi/v2/cc/search_inst/', data = data, headers = headers)
    return res_p
 
 
if __name__ == '__main__':
s = keep_alive()
for in range(4001):
res = q_inst(s, value='10.1.1.1')
#################output##########################
查詢接口共耗時:0:03:21.099682

關(guān)于“python中requests怎么優(yōu)化接口調(diào)用”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI