首页 > 编程语言 > 详细

python:requests库发送参数+文件

时间:2020-05-22 16:25:38      阅读:64      评论:0      收藏:0      [点我收藏+]

https://www.hangge.com/blog/cache/detail_2375.html

https://www.jianshu.com/p/a7bd73de7d34

 

背景:

  项目中有一个接口是需要导入Excel文件,并附带其他参数,过程比较费时,在此记录。

 

一、抓包使用postman调试

抓包得知Content-Type为multipart/form-data,入参如下图

技术分享图片

 

技术分享图片

 

 

 所以现在postman中调试好接口,配好后如下:

技术分享图片

 

 请求结果为:

技术分享图片

 

 

二、使用python中requests库请求接口

from requests_toolbelt import MultipartEncoder
import requests
import os

url = "http://192.168.2.1/****/uploadfile"

file_path = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))


m = MultipartEncoder(
    fields={"isNotKCode": "Y",
            "fromCode": "DIST_INTERNAL_022/DIST_INTERNAL_120000/DIST_INTERNAL_120104",
            "fromName": "天津/天津市/南开区",
            "sendName": "asdfas",
            "sendMobile": "18526363636",
            "sendPhone": "",
            "sendAddress": "e5632452542345",
            "uploadType": "1",
            "fileType": "3",
            "file": (file_path + "/标准模板(不包含发件人信息).xls", open(file_path + "/标准模板(不包含发件人信息).xls", rb),
                         application/vnd.ms-excel, {Expires: 0})
            }
)

response = requests.post(url, data=m, headers={"Content-Type": m.content_type,
                                               "jwt-token": "KYkmsPDBk"})
print(response.json())

注意:单独的requests库已经不满足了,需要使用requests_toolbelt 库,参数格式如代码示例

 

python:requests库发送参数+文件

原文:https://www.cnblogs.com/gcgc/p/12937752.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!