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)





















  • 相关阅读:
    [css3]搜索框focus时变长
    [css3]文字过多以省略号显示
    HTML5表单新增属性
    [JS]getYear()和getFullYear()方法区别
    红包彩带动画效果
    ios下input focus弹出软键盘造成fixed元素位置移位
    旋转效果
    移动端前端开发
    如何加快页面加载速度
    centos7/rhel7下安装redis4.0集群
  • 原文地址:https://www.cnblogs.com/zijiyanxi/p/5231049.html
Copyright © 2011-2022 走看看