• Requests库的使用


    1. 发起请求
    2. 接收响应
    3. session对象

    发起请求

    请求方法

    get、post、head、options、delete、put

    传递URL参数

    构造一个字典,并在请求时将其传递给params参数

    提交数据时,遇到相同的参数名,但有不同的值,而python的字典又不支持键的重名,可以把键的值用列表表示

    自定义Headers

    自定义Cookies

    在headers中添加

    cookies参数(必须为字典形式)

    设置代理(proxies参数)

    重定向

    allow_redirects=False 禁止重定向

    history 属性可以查看历史记录,从哪个网站过来的,重定向过来的会显示重定向的状态码

    禁止证书验证

    把verify参数设置为False

    禁止证书验证后,会有warning

    关闭警告

    from requests.packages.urllib3.exceptions import InsecureRequestWarning

    requests.packages.urllib3.disable_warnings(InsecureRequestWarning)

    设置超时      timeout属性

    以流形式下载    stream=True

    接收响应

    响应内容

    text属性,返回的是文本内容

    字符编码

    Requests会自动的根据响应的报头来猜测网页的编码是什么,然后根据猜测的编码来解码网页内容,基本上大部分的网页都能够正确的被解码

    而如果发现text解码不正确的时候,就需要自己手动的去指定解码的编码格式

    二进制数据

    如果需要获得原始的二进制数据,那么使用content属性即可

    json数据

    如果访问之后获得的数据是JSON格式的,那么可以使用json()方法,直接获取转换成字典格式的数据

    状态码

    通过status_code属性获取响应的状态码

    响应报头

    headers属性

    服务器返回的cookies

    cookies属性

    查看访问的url

    url属性

    Session对象

    在Requests中,实现了Session(会话)功能,当我们使用Session时,能够像浏览器一样,在没有关闭浏览器时,能够保持住访问的状态

    这个功能常常用于登陆之后的数据获取,使我们不用再一次又一次的传递cookies

    首先生成一个Session对象,然后用这个Session对象来发起访问,发起访问的方法与正常的请求一摸一样

    需要注意的是,如果是在get()方法中传入headers和cookies等数据,那么这些数据只在当前这一次请求中有效

    如果想要让一个headers在Session的整个生命周期内都有效的话,需要进行设置:session.headers.updata(headers)

  • 相关阅读:
    GO語言基礎教程:數組,切片,map
    GO語言視頻教程下載
    GO語言基礎教程:流程控制
    GO語言基礎教程:數據類型,變量,常量
    GO語言基礎教程:Hello world!
    GO語言基礎教程:序章
    騰訊RTX的API開發,給RTX開個天窗
    RTX的api開發實例
    [轉]redis;mongodb;memcache三者的性能比較
    [轉載]史上最强php生成pdf文件,html转pdf文件方法
  • 原文地址:https://www.cnblogs.com/jiyu-hlzy/p/11802224.html
Copyright © 2020-2023  润新知