欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python接口測(cè)試文件上傳實(shí)例解析

 更新時(shí)間:2020年05月22日 15:07:51   作者:深圳阿張  
這篇文章主要介紹了Python接口測(cè)試文件上傳實(shí)例解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

接口測(cè)試中,上傳文件的測(cè)試場(chǎng)景非常常見(jiàn)。例如:上傳頭像(圖片)、上傳文件、上傳視頻等。下面以一個(gè)上傳圖片的例子為大家講解如何通過(guò) python 測(cè)試上傳文件接口。

首先通過(guò)抓包分析上傳文件接口的請(qǐng)求參數(shù):


下面是上傳文件接口腳本。把目標(biāo)文件以open打開(kāi),然后存儲(chǔ)到變量file。并且使用files參數(shù)指明請(qǐng)求的參數(shù)名稱、上傳文件的類型、以及上傳文件的路徑。


這里注意:content-type參數(shù),如果我們通過(guò)form-data的方式上傳文件,我們發(fā)送post請(qǐng)求的時(shí)候,headers這個(gè)參數(shù)中一定不能要包括這個(gè)值,,requests庫(kù)會(huì)幫忙添加這個(gè)元素,加了可能會(huì)報(bào)錯(cuò)。

代碼實(shí)現(xiàn):

import requests
from utils.LogUtil import my_log
from faker import Faker
log=my_log()
faker = Faker('zh_CN')


class marketCreate():


  def loginToken(self,mobile,code):
    '''
    登陸、注冊(cè)接口
    :param mobile: 手機(jī)號(hào)
    :param code:  驗(yàn)證碼
    :return:
    '''
    url='http://api.xxxxxx.net/v1/user/loginOrRegister'   #登陸接口請(qǐng)求地址
    headers={'Content-Type': 'application/json'}      #請(qǐng)求頭信息,json數(shù)據(jù)類型
    json={"code":code,"deviceId":"5de548ad0e268bc0","deviceName":"HWNXT","mobile":mobile,"mobilePrefix":"63","version":"39"}   #請(qǐng)求數(shù)據(jù)
    r=requests.post(url,headers=headers,json=json) #發(fā)送請(qǐng)求
    token=r.json()['data']['userVO']['token']    #獲取token
    log.info('手機(jī)號(hào)'+mobile+'的token值為:'+token) #打印日志
    return token                  #將token返回出去

  def uploadimages(self,mobile,file_path,filename):
    '''
    上傳圖片接口
    :param mobile:   手機(jī)號(hào)
    :param file_path:  文件路徑
    :param filename:  文件名稱
    :return:
    '''
    token = self.loginToken(mobile=mobile, code='789789')    #請(qǐng)求登陸接口,獲取token
    url='http://api.xxxxxx.net/v1/upload/images'        #上傳文件接口請(qǐng)求地址
    headers={'token': token}   #請(qǐng)求頭信息關(guān)聯(lián)token。不需要賦值Content-Type,requests庫(kù)會(huì)幫忙添加這個(gè)元素,加了可能會(huì)報(bào)錯(cuò)。
    file_data={'file':(filename,open(file_path,'rb'),'image/jpeg')} #重點(diǎn):上傳文件請(qǐng)求數(shù)據(jù)。
    r=requests.post(url=url,headers=headers,files=file_data)    #發(fā)送請(qǐng)求
    print(r.json())   #打印響應(yīng)結(jié)果

if __name__ == '__main__':
  m=marketCreate()
  # 測(cè)試,輸入手機(jī)號(hào)、文件地址、文件名稱信息;
  m.uploadimages(mobile='639266558329',file_path='D:\pyCharm_work\cmkjProject\data\market.jpg',filename='123456.jpg')

執(zhí)行結(jié)果:

C:\Python38\python.exe D:/pyCharm_work/cmkjProject/page/marketPage.py
2020-01-02 13:48:09,580-D:\pyCharm_work\cmkjProject\utils\LogUtil.py-INFO-手機(jī)號(hào)639266558329的token值為:ba9b4f622fa4d6461523870c0d00df46
{'code': 0, 'data': '/group1/M00/00/00/rBDKPF4NhE-ABIFmAAGhT9tm-NA158.jpg', 'success': True}

Process finished with exit code 0

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 利用python腳本提取Abaqus場(chǎng)輸出數(shù)據(jù)的代碼

    利用python腳本提取Abaqus場(chǎng)輸出數(shù)據(jù)的代碼

    這篇文章主要介紹了利用python腳本提取Abaqus場(chǎng)輸出數(shù)據(jù),利用python腳本對(duì)Abaqus進(jìn)行數(shù)據(jù)提取時(shí),要對(duì)python腳本做前步的導(dǎo)入處理,本文通過(guò)實(shí)例代碼詳細(xì)講解需要的朋友可以參考下
    2022-11-11
  • Python自定義指標(biāo)聚類實(shí)例代碼

    Python自定義指標(biāo)聚類實(shí)例代碼

    K-means算法是最為經(jīng)典的基于劃分的聚類方法,是十大經(jīng)典數(shù)據(jù)挖掘算法之一,下面這篇文章主要給大家介紹了關(guān)于Python自定義指標(biāo)聚類的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-02-02
  • Python 一篇文章看懂時(shí)間日期對(duì)象

    Python 一篇文章看懂時(shí)間日期對(duì)象

    學(xué)習(xí)每一門語(yǔ)言多多少少會(huì)用到與時(shí)間相關(guān)的東西,咱們今天呢就談一談Python中的時(shí)間與日期對(duì)象。在Python中時(shí)間對(duì)象一般可以用來(lái)測(cè)量效率。日期對(duì)象用來(lái)處理日期與字符串之間的關(guān)系
    2022-03-03
  • 詳解Python中數(shù)據(jù)處理的方法總結(jié)及實(shí)現(xiàn)

    詳解Python中數(shù)據(jù)處理的方法總結(jié)及實(shí)現(xiàn)

    數(shù)據(jù)增強(qiáng)作為前處理的關(guān)鍵步驟,在整個(gè)計(jì)算機(jī)視覺(jué)中有著具足輕重的地位。本文為大家總結(jié)了Python中數(shù)據(jù)處理的方法及實(shí)現(xiàn),需要的可以參考一下
    2022-09-09
  • Python3 解釋器的實(shí)現(xiàn)

    Python3 解釋器的實(shí)現(xiàn)

    在本篇內(nèi)容中小編給大家總結(jié)了關(guān)于Python3解釋器的用法以及相關(guān)知識(shí)點(diǎn),需要的朋友們學(xué)習(xí)下。
    2021-06-06
  • Python機(jī)器學(xué)習(xí)iris數(shù)據(jù)集預(yù)處理和模型訓(xùn)練方式

    Python機(jī)器學(xué)習(xí)iris數(shù)據(jù)集預(yù)處理和模型訓(xùn)練方式

    iris數(shù)據(jù)集包含150個(gè)樣本,每個(gè)樣本有4個(gè)特征及其類別信息,本文介紹了iris數(shù)據(jù)集的基本操作和如何使用knn模型進(jìn)行花卉種類預(yù)測(cè),是機(jī)器學(xué)習(xí)中的經(jīng)典案例,適用于監(jiān)督式學(xué)習(xí)
    2024-10-10
  • python讓函數(shù)不返回結(jié)果的方法

    python讓函數(shù)不返回結(jié)果的方法

    在本篇內(nèi)容里小編給大家整理的是關(guān)于python讓函數(shù)不返回結(jié)果的方法,有需要的朋友們可以參考下。
    2020-06-06
  • 基于sklearn實(shí)現(xiàn)Bagging算法(python)

    基于sklearn實(shí)現(xiàn)Bagging算法(python)

    這篇文章主要為大家詳細(xì)介紹了基于sklearn實(shí)現(xiàn)Bagging算法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-07-07
  • Python利用itchat庫(kù)向好友或者公眾號(hào)發(fā)消息的實(shí)例

    Python利用itchat庫(kù)向好友或者公眾號(hào)發(fā)消息的實(shí)例

    今天小編就為大家分享一篇Python利用itchat庫(kù)向好友或者公眾號(hào)發(fā)消息的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-02-02
  • Python緩存技術(shù)實(shí)現(xiàn)過(guò)程詳解

    Python緩存技術(shù)實(shí)現(xiàn)過(guò)程詳解

    這篇文章主要介紹了Python緩存技術(shù)實(shí)現(xiàn)過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-09-09

最新評(píng)論