关于cookie的认识

一、关于http无状态的认识

在网站中,http请求是无状态的,也就是说第一次与服务器连接后并且接收到服务器的返回值的时候,就断开连接,等第二次连接的时候,又是一个新的连接,服务器并不知道之前连接过。cookie的出现就是解决这个问题.主要原理:

  • 用户第一次登陆后,服务器给浏览器返回cookie,客户端将cookie保存在本地
  • 用户再次访问的时候携带之前服务器返回的cookie,服务器会对当前用户携带过来的cookie进行校验
  • 如果当前的cookie校验通过后就表明当前用户之前已经登录过,否则当前用户之前没登录过

在爬虫中使用cookie的主要作用是用来模拟登录后才能访问的网站

二、关于http.cookiejar模块的使用

  • 1、CookieJar: 管理Http cookie的值,存储http请求生成的cookie、向传出的http的请求添加cookie的对象.整个cookie都存储在内存中,对cookieJar实例进行辣椒回收后cookie也丢失
  • 2、FileCookieJar: 从CookieJar派生而来,用来创建FileCookieJar实例,检索cookie信息并且将cookie存储到文件中,filename是存储的cookie的文件名,delayloadTrue的时候支持延迟访问文件,即只有在需要时才读物文件或在文件中存储数据.
  • 3、MozillaCookieJar:从FileCookieJar派生而来,创建与火狐浏览器cookie.txt兼容的FileCookieJar实例

三、关于cookies的方法

  • 1、使用requests请求库

    response = requests.get(url='')
    response.cookies # 获取全部的cookie
    response.cookies.get_dict() # 将cookie以字典的方式展开
    

results matching ""

    No results matching ""