• 文件上传接口


     

    这只是python请求的一组实用程序,但并不属于requests正确的。最低测试请求版本是 2.1.0实际上,工具带2.0.1应该可以使用,但是一些特性阻止了对该版本的有效或合理的测试。

    pip install requests-toolbelt 开始!

    multipart / form-data编码器

    主要的吸引力是流式多部分表单数据对象,MultipartEncoder它的API看起来像这样:

    from requests_toolbelt import MultipartEncoder
    import requests
    
    m = MultipartEncoder(
        fields={'field0': 'value', 'field1': 'value',
                'field2': ('filename', open('file.py', 'rb'), 'text/plain')}
        )
    
    r = requests.post('http://httpbin.org/post', data=m,
                      headers={'Content-Type': m.content_type})
    

    您还可以multipart/form-data对不需要文件的请求使用编码:

    from requests_toolbelt import MultipartEncoder
    import requests
    
    m = MultipartEncoder(fields={'field0': 'value', 'field1': 'value'})
    
    r = requests.post('http://httpbin.org/post', data=m,
                      headers={'Content-Type': m.content_type})
    

    或者,您可以只创建字符串并检查数据:

    # Assuming `m` is one of the above
    m.to_string()  # Always returns unicode
    

    用户代理构造函数

    您可以轻松构建请求样式的User-Agent字符串:

    from requests_toolbelt import user_agent
    
    headers = {
        'User-Agent': user_agent('my_package', '0.0.1')
        }
    
    r = requests.get('https://api.github.com/users', headers=headers)
    

    SSLAdapter 

    SSLAdapter最初发表在科里菲尔德的博客此适配器允许用户选择Python ssl模块中提供的SSL协议之一用于传出HTTPS连接:

    from requests_toolbelt import SSLAdapter
    import requests
    import ssl
    
    s = requests.Session()
    s.mount('https://', SSLAdapter(ssl.PROTOCOL_TLSv1))
    

    饼干/ ForgetfulCookieJar 

    ForgetfulCookieJar防止存储Cookie特定请求会话:

    from requests_toolbelt.cookies.forgetful import ForgetfulCookieJar
    
    session = requests.Session()
    session.cookies = ForgetfulCookieJar()
  • 相关阅读:
    【学习】CodeUi
    【C#】权限修饰符
    链表_初步认识
    关于mysql8.0及以上版本连接navicat时候报错(密码加密方式需要修改)
    docker 运行mysql最新版本用navicat连接报错:1251
    spring5的基本组成(6个模块)
    关于java中设计原则总结(7)
    java中String中的endsWith()方法
    mysql中基本的语句
    mysql中索引类型
  • 原文地址:https://www.cnblogs.com/xuzhongtao/p/11414137.html
Copyright © 2020-2023  润新知