zoukankan      html  css  js  c++  java
  • Python Requests-学习笔记(4)-定制请求头和POST

    定制请求头

    如果你想为请求添加HTTP头部,只要简单地传递一个 dict 给 headers 参数就可以了。

    import json
    url = 'https://api.github.com/some/endpoint'
    payload = {'some': 'data'}
    headers = {'content-type': 'application/json'}

    r = requests.post(url, data=json.dumps(payload), headers=headers)
    print r.text

    更加复杂的POST请求

    通常,你想要发送一些编码为表单形式的数据—非常像一个HTML表单。 要实现这个,只需简单地传递一个字典给 data 参数。你的数据字典 在发出请求时会自动编码为表单形式:

    import requests
    url = 'https://api.github.com/some/endpoint'
    payload = {'key1': 'value1', 'key2': 'value2'}
    r = requests.post("http://httpbin.org/post", data=payload)
    print r.text

    POST一个多部分编码(Multipart-Encoded)的文件

    import requests
    url = 'http://httpbin.org/post'
    files = {'file': open('zxc.txt', 'rb')}
    r = requests.post(url, files=files)
    print r.text

    你可以显式地设置文件名,文件类型和请求头:

    url = 'http://httpbin.org/post'
    files = {'file': ('report.xls', open('zxc.xls', 'rb'), 'application/vnd.ms-excel', {'Expires': '0'})}

    r = requests.post(url, files=files)
    print r.text


    如果你想,你也可以发送作为文件来接收的字符串:

    url = 'http://httpbin.org/post'
    files = {'file': ('report.csv', 'some,data,to,send
    another,row,to,send
    ')}
    
    r = requests.post(url, files=files)





















  • 相关阅读:
    p1012拼数题解
    LeetCode OJ :Unique Binary Search Trees II(唯一二叉搜索树)
    UVA 11827 Maximum GCD
    LightOJ1336 Sigma Function(约数和为偶数的个数)
    LightOJ 1197 Help Hanzo(区间素数筛选)
    LightOJ 1236
    BZOJ3339 Rmq Problem
    COJ983 WZJ的数据结构(负十七)
    LCA的五种解法
    hdu4223(dp)
  • 原文地址:https://www.cnblogs.com/zijiyanxi/p/5231049.html
Copyright © 2011-2022 走看看