• requests上传文件的方法


    基本方式一:

    r = requests.post('http://httpbin.org/post', files={'file': open('report.xls', 'rb')})

    方式二(带其他参数):

    import requests
    import json
    
    session = requests.session()
    url = "http://cdht-sentinel.testing.bbdops.com/api/v1.0/auth/sso/login?t=669259"
    data = {
        "ip": "--",
        "location": "--",
        "password": "71b44033d3814ca82c7d079e046d6765",
        "systemState": 2,
        "username": "adminc"
    }
    headers = {
        "Connection": "keep-alive",
        "Content-Encoding": "gzip",
        "Content-Type": "application/json;charset=UTF-8"
    }
    # 登录,获取cookie
    response = session.post(url=url, data=json.dumps(data), headers=headers)
    ret = json.loads(response.text)
    print("登录成功?:", ret.get('success'))
    
    # 上传文件
    url_upload = "http://cdht-sentinel.testing.bbdops.com/api/v1.0/building/company/employees/import?t=640796"
    files = {'file': open('0', 'rb')}
    ret_upload = session.post(url_upload, data={'buildingId': 23}, files=files)
    print(ret_upload)
    print(ret_upload.text)
    print(ret_upload.content)

    方式三(不使用requests.session(),而采用原生方式):

    import requests
    
    # 原生方式登录,得到cookie
    response = requests.post(url="http://cdht-sentinel.testing.bbdops.com/api/v1.0/auth/sso/login?t=862637",
                             json={"ip": "182.150.28.190",
                                   "location": "四川省成都市",
                                   "password": "71b44033d3814ca82c7d079e046d6765",
                                   "systemState": 2,
                                   "username": "adminc"})
    cookies = response.cookies
    
    # 上传图片时带上cookie
    response = requests.post(url="http://cdht-sentinel.testing.bbdops.com/api/v1.0/building/file/upload?t=670869",
                             files={"file": open("1920_1080.jpg", "rb")},
                             cookies=cookies)
    
    print(response.text)  # 上传图片成功
  • 相关阅读:
    [杂题]CSUOJ1274Balls and Boxes
    [Gauss]POJ1222 EXTENDED LIGHTS OUT
    [杂题]CSUOJ1413 Area of a Fractal
    [AC自动机]HDOJ3695 Computer Virus on Planet Pandora
    [dp]POJ2559 && HDOJ1506 Largest Rectangle in a Histogram
    [TSP+floyd]POJ3311 Hie with the Pie
    [状压dp]HDOJ3182 Hamburger Magi
    [状压dp]HDOJ1565 方格取数(1)
    [dp]Codeforces30C Shooting Gallery
    树套树模版
  • 原文地址:https://www.cnblogs.com/staff/p/14275561.html
Copyright © 2020-2023  润新知