• python-requests库使用


    ###

    http的8种请求方式:get,post,put,delete,option,trace,connect,head,

    主要就是get和post,

    ### 

    request源码分析

    # requests源码解析,
    
    import requests
    requests.get(url,)
    
    # 里面除了url参数还有什么参数?
    #看源码,这个get请求是取调用了request,
    def get(url, params=None, **kwargs):
        kwargs.setdefault('allow_redirects', True)
        return request('get', url, params=params, **kwargs)
    
    # 然后request最后是返回了session.request()
    def request(method, url, **kwargs):
        with sessions.Session() as session:
            return session.request(method=method, url=url, **kwargs)
    
    # 而session.request()里面有很多的参数,
    def request(self, method, url,
                params=None, data=None, headers=None, cookies=None, files=None,
                auth=None, timeout=None, allow_redirects=True, proxies=None,
                hooks=None, stream=None, verify=None, cert=None, json=None): XXX
    
    # 参数解释
    # data 这是携带请求体里面的数据,字典格式,    
    # headers 这是携带请求头,字典格式,
    # cookies 这是携带请求的cookies信息,字典格式,
    # proxies 这个是使用代理,也是字典格式,
    # verify 如果是https请求,把这个=FALSE,就是不校验证书,

    ###

    分析response响应数据

    import requests
    
    res = requests.get(url)
    
    print(dir(res))
    
    #通过这个dir查看一下这个返回值,有什么方法?
    [ 'apparent_encoding', 'close', 'connection', 'content', 'cookies', 'elapsed', 'encoding', 
    'headers', 'history', 'is_permanent_redirect', 'is_redirect', 'iter_content', 'iter_lines', 'json',
    'links', 'next', 'ok', 'raise_for_status', 'raw', 'reason', 'request', 'status_code', 'text', 'url'] #去掉双下划线的方法,解释一下这些方法, # content,返回一个二进制的响应内容, # cookies,打印出cookies信息, # encoding,打印出编码类型 # headers,打印出headers信息, # status_code,打印状态码 # text,打印出编码后的响应内容 # url,打印出本次请求的url,

    ### 

    ####

  • 相关阅读:
    linux编写脚本执行.py文件
    x.strip().split(' ')
    pycharm全局搜索
    list extend()
    python format格式化字符串、格式化数字
    python range函数
    Teamcenter RAC 调用查询
    Circular Local MiniMax (数列特性问题+贪心)(CF 794,d2 C)
    Odd Subarrays (贪心,dp一下)(CF 794 d2)
    Number of Groups (区间重叠问题(时间线性)+贪心优化时间复杂度+优先队列(或者set))
  • 原文地址:https://www.cnblogs.com/andy0816/p/15150007.html
Copyright © 2020-2023  润新知