美文网首页
2018-06-15 Python Requests-学习笔记(

2018-06-15 Python Requests-学习笔记(

作者: lucasdada | 来源:发表于2018-06-15 16:09 被阅读0次

    转载:

    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\nanother,row,to,send\n')}
    
    r = requests.post(url, files=files)
    

    相关文章

      网友评论

          本文标题:2018-06-15 Python Requests-学习笔记(

          本文链接:https://www.haomeiwen.com/subject/itemeftx.html