【Python爬虫历程】Cookie的解释

1.什么是cookie:

Cookie,有时也用其复数形式 Cookies。类型为“小型文本文件”,是某些网站为了辨别用户身份,进行Session跟踪而储存在用户本地终端上的数据(通常经过加密),由用户客户端计算机暂时或永久保存的信息  。

在网站中,http请求是无状态的。也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪个用户。cookie的出现就是为了解决这个问题,第一次登录后服务器返回一些数据(cookie)给浏览器,然后浏览器保存在本地,当该用户发送第二次请求的时候,就会自动的把上次请求存储的cookie数据自动的携带给服务器,服务器通过浏览器携带的数据就能判断当前用户是哪个了。cookie存储的数据量有限,不同的浏览器有不同的存储大小,但一般不超过4KB。因此使用cookie只能存储一些小量的数据。

2.cookie的格式:

Set-Cookie: NAME=VALUE;Expires/Max-age=DATE;Path=PATH;Domain=DOMAIN_NAME;SECURE

参数意义:

  • NAME:cookie的名字。
  • VALUE:cookie的值。
  • Expires:cookie的过期时间。
  • Path:cookie作用的路径。该 Cookie 是在当前的哪个路径下生成的,如 path=/wp-admin/。
  • Domain:cookie作用的域名。
  • SECURE:是否只在https协议下起作用。如果设置了这个属性,那么只会在 SSH 连接时才会回传该 Cookie

3. cookie机制

当用户第一次访问并登陆一个网站的时候,cookie的设置以及发送会经历以下4个步骤:

客户端发送一个请求到服务器 --》 服务器发送一个HttpResponse响应到客户端,其中包含Set-Cookie的头部 --》 客户端保存cookie,之后向服务器发送请求时,HttpRequest请求中会包含一个Cookie的头部 --》服务器返回响应数据

4.cookie示例

Cookie:

_ga=GA1.2.44348677.1581672731; sensorsdata2015jssdkcross=%7B%22distinct_id%22%3A%221701eda4b7c65a-0753213a9e6b1f-3350467f-2073600-1701eda4b7dd12%22%2C%22first_id%22%3A%22%22%2C%22props%22%3A%7B%22%24latest_traffic_source_type%22%3A%22%E8%87%AA%E7%84%B6%E6%90%9C%E7%B4%A2%E6%B5%81%E9%87%8F%22%2C%22%24latest_search_keyword%22%3A%22%E6%9C%AA%E5%8F%96%E5%88%E5%80%BC%22%2C%22%24latest_referrer%22%3A%22https%3A%2F%2Fwww.baidu.com%2Flink%22%2C%22%24device_id%22%3A%221701eda4b7c65a-0753213a9e6b1f-3350467f-2073600-1701eda4b7dd12%22%7D; Hm_lvt_0c0e9d9b1e7d617b3e6842e85b9068=1585036356,1585037020,1585212086,1585213601; signin_redirect=https://www.jianshu.com/p/6fc9cea6daa2; locale=zh-CN; _gid=GA1.2.1921932447.1585396240; _m7e_session_core=b14c0468008ff2787361d4136120cf8a

你可能感兴趣的:(python爬虫历程,cookie,爬虫)