ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python requests_toolbelt模块传输csv文件

2022-04-20 12:03:25  阅读:214  来源: 互联网

标签:python res env1 toolbelt headers url import requests data


需求:测试导入相机信息功能,文件为csv格式

代码实现:

点击查看代码
import os
import requests
from urllib import parse
from requests_toolbelt import MultipartEncoder
from utils.handle_yaml import test_info
from utils.log_record import logger

env1 = test_info.env_info("env1")

file = os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))), "test_data", "upload_cameraInfo.csv")


class TestUploadCameraInfo(object):
    """相机信息信息"""

    def test_upload_camera_info_succs(self, login):
        # 导入相机
        env1["headers"]["accessToken"] = login
        res_project = requests.get(parse.urljoin(env1["base_url"], "/api/project/query"),
                                   headers=env1["headers"]).json()
        site_id = res_project.get("data").get("siteId")

        url = parse.urljoin(env1["base_url"], "/api/camera/upload_camera_info/%s" % site_id)
        logger(url=url, method="POST")
        # 数据组装
        data = MultipartEncoder(fields={"file": ("upload_cameraInfo.csv", open(file, "rb"), "text/csv")})
        # 重写Content-Type
        env1["headers"]["Content-Type"] = data.content_type
        logger(headers=env1["headers"]["Content-Type"], data=data)

        res = requests.post(url, headers=env1["headers"], data=data).json()

        logger(response=str(res))

        exp_data = {
            "code": 0,
            "data": {},
            "message": "success"
        }

        assert res == exp_data

标签:python,res,env1,toolbelt,headers,url,import,requests,data
来源: https://www.cnblogs.com/yanlin-10/p/16083619.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有