〖Python网络爬虫实战⑤〗- Session和Cookie介绍

news2025/7/28 6:06:12
  • 订阅:新手可以订阅我的其他专栏。免费阶段订阅量1000+

                python项目实战

                Python编程基础教程系列(零基础小白搬砖逆袭)

  • 说明:本专栏持续更新中,目前专栏免费订阅,在转为付费专栏前订阅本专栏的,可以免费订阅付费专栏,可报销(名额有限,先到先得)
  • 作者:爱吃饼干的小白鼠。Python领域优质创作者,2022年度博客新星top100入围,荣获多家平台专家称号。

 最近更新

〖Python网络爬虫实战①〗- HTTP原理

〖Python网络爬虫实战②〗- Web网页基础

〖Python网络爬虫实战③〗- 爬虫的基本原理

〖Python网络爬虫实战④〗- 代理的基本原理

〖Python网络爬虫实战⑤〗- Session和Cookie介绍

🌟上节回顾

上一节,我们学习了代理的基本原理,以及,我们为什么要配置代理,它的作用是什么。本文,我们了解一下。什么是Session和Cookie,以及他们的作用是什么。

⭐️Session和Cookie

        我们在访问一些网站的时候,需要我们登录,比如讲邮箱等等网站,也就是,有一些网站需要登录,我们才能看到页面。我们会发现,我们有时候在登录网站之后,当我们再次打开的时候,就会自动登录,而且长时间不会失效,但是,有时候有的网站,时间长了,就需要重新登录。

        这是什么原因呢?其实,这里面涉及到了Session和Cookie的相关知识,本文,我们就来具体的介绍它。

🌟静态网页和动态网页

        我们在了解Session和Cookie之前,我们先知道什么是静态网页和动态网页。

✨静态网页

        在网站设计中,纯粹HTML(标准通用标记语言下的一个应用)格式的网页通常被称为“静态网页”,静态网页是标准的HTML文件,它的文件扩展名是.htm、.html,可以包含文本、图像、声音、FLASH动画、客户端脚本和ActiveX控件及JAVA小程序等。

        这里我展示一个静态网页示例代码。

<!DOCTYPE html>  
<html lang="zh">  
<head>  
    <meta charset="UTF-8">  
    <meta name="viewport" content="width=device-width, initial-scale=1.0">  
    <title>静态网页示例</title>  
    <style>  
        body {  
            font-family: Arial, sans-serif;  
            text-align: center;  
            background-color: #f2f2f2;  
            margin: 0 auto;  
            padding: 20px;  
        }  
  
        h1 {  
            font-size: 36px;  
            color: #333;  
            margin-top: 0;  
            margin-bottom: 20px;  
        }  
  
        p {  
            font-size: 18px;  
            line-height: 1.5;  
            margin-bottom: 20px;  
        }  
    </style>  
</head>  
<body>  
    <h1>欢迎来到静态网页示例</h1>  
    <p>这是一个简单的静态网页示例,使用 HTML 和 CSS 创建一个基本的网页。</p>  
</body>  
</html>

✨动态网页

        动态网页是指跟静态网页相对的一种网页编程技术。静态网页,随着html代码的生成,页面的内容和显示效果就基本上不会发生变化了——除非你修改页面代码。而动态网页则不然,页面代码虽然没有变,但是显示的内容却是可以随着时间、环境或者数据库操作的结果而发生改变的。动态网页使用的语言包括ASP、PHP、JSP、Python等,这些语言都是服务器端的脚本语言,负责与客户端的交互,处理客户端的请求,生成动态的网页。

        我们回到之前的问题,许多页面是需要登录才能查看,肯定是拿到了什么凭证,然后,我们才可以访问这些页面。那么,这个凭证是什么呢?实际上就是Session和Cookie共同作用的结果。

        这里,我也放一个动态网页的示例代码。

<!DOCTYPE html>  
<html>  
<head>  
    <title>动态网页示例</title>  
    <script>  
        function showMessage() {  
            document.getElementById("message").innerHTML = "这是一个动态网页示例";  
        }  
    </script>  
</head>  
<body>  
    <h1>欢迎来到动态网页示例</h1>  
    <p>这是一个简单的动态网页示例,使用 JavaScript 和 HTML 创建一个简单的网页。</p>  
    <p id="message"></p>  
</body>  
</html>

🌟Session

        在计算机中,尤其是在网络应用中,session 指的是一个终端用户与交互系统进行通信的时间间隔,通常指从注册进入系统到注销退出系统之间所经过的时间,需要注意的是,一个session的概念需要包括特定的客户端,特定的服务器端以及不中断的操作时间。

        Session 对象存储特定用户会话所需的属性及配置信息,当用户在应用程序的 Web 页之间跳转时,存储在 Session 对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。当用户请求来自应用程序的 Web 页时,如果该用户还没有会话,则 Web 服务器将自动创建一个 Session 对象。当会话过期或被放弃后,服务器将终止该会话。Session 对象最常见的一个用法就是存储用户的首选项,例如,如果用户指明不喜欢查看图形,就可以将该信息存储在 Session 对象中。

🌟Cookie

我们先了解一下什么是Cookie?

Cookie是一种存储在计算机浏览器目录中的文本文件。当用户浏览某个站点并注册帐号,就会生成一个Cookie文件用于记录登录信息。目前,大多数网站都会应用Cookie技术,这既能给用户提供一个好的网络环境,又能方便收集访客信息。

Cookie 的组成结构包括以下几个部分:

  1. cookie 的 name 和 value:这是 Cookie 的名称和对应的值,其中 name 是 Cookie 的标识符,value 是 Cookie 的值。
  2. cookie 的 domain:这是 Cookie 可以访问的域名,当需要跨域访问 Cookie 时,可以在该字段进行添加相应域名。
  3. cookie 的 path:这是 Cookie 可以访问的路径,当 Cookie 需要跨域访问时,可以在该字段中指定 Cookie 的访问路径。
  4. cookie 的 httpOnly:这个字段主要是禁止调用 JavaScript 的 document.cookie 这个 API,从而防止跨站脚本攻击(XSS)。
  5. cookie 的 secure:这个字段表明了 Cookie 是否安全,默认值为 False,表示 Cookie 不安全。
  6. cookie 的 expiry:这是 Cookie 的有效终止日期,当 Cookie 到期后,服务器端将自动删除 Cookie。
  7. cookie 的 path 属性:这是 Cookie 定义的 Web 服务器上哪些路径下的页面可获取服务器设置的 Cookie。
  8. cookie 的 domain 属性:这是 Cookie 定义的服务器域名,当 Cookie 需要跨域访问时,可以在该字段中指定服务器的域名。

        以上就是 Cookie 的基本组成结构,不同的 Cookie 可能还包括其他的属性和值。

🌟总结

        本文介绍了Session和Cookie的相关知识,这对我们后面学习网络爬虫有很大的作用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/427546.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux的诞生过程

个人简介&#xff1a;云计算网络运维专业人员&#xff0c;了解运维知识&#xff0c;掌握TCP/IP协议&#xff0c;每天分享网络运维知识与技能。座右铭&#xff1a;海不辞水&#xff0c;故能成其大&#xff1b;山不辞石&#xff0c;故能成其高。个人主页&#xff1a;小李会科技的…

走近阿里Apsara Clouder云计算的蓝图

文章目录一&#xff1a;"什么是Apsara Clouder 云计算"二&#xff1a;"Apsara Clouder 云计算"厉害在哪里&#xff1f;三&#xff1a;"Apsara Clouder 云计算"认证一&#xff1a;“什么是Apsara Clouder 云计算” &#x1f496;&#x1f496; A…

【云原生Docker】09-Docker网络详解

【云原生|Docker】09-Docker网络详解 文章目录【云原生|Docker】09-Docker网络详解前言网络详解bridge网络基于bridge网络的容器访问外部网络外部网络访问基于bridge网络的容器host网络none网络container网络自定义网络自定义bridge网络容器的互通两个相同的bridge网络容器互通…

多层多输入的CNN-LSTM时间序列回归预测(卷积神经网络-长短期记忆网络)——附代码

目录 摘要&#xff1a; 卷积神经网络(CNN)的介绍&#xff1a; 长短期记忆网络&#xff08;LSTM&#xff09;的介绍&#xff1a; CNN-LSTM&#xff1a; Matlab代码运行结果&#xff1a; 本文Matlab代码数据分享&#xff1a; 摘要&#xff1a; 本文使用CNN-LSTM混合神经网…

spring快速连接mybatis

spring快速连接mybatisspring整合mybatis1.maven依赖配置2.数据库sql设计3.数据库连接配置4.实体类设计5.Dao层开发6.SqlMapConfig.xml7.运行程序进行crudspring整合mybatis 1.maven依赖配置 配置pom.xml如下 <?xml version"1.0" encoding"UTF-8"?…

【机器学习】P6 逻辑回归的 损失函数 以及 梯度下降

逻辑回归的损失函数 以及 梯度下降逻辑回归的损失函数逻辑回归的 Loss逻辑回归的 Cost逻辑回归的梯度下降总公式推导公式梯度下降动画效果展示Reference逻辑回归的损失函数 逻辑回归的 Loss 逻辑回归是一种用于二分类问题的监督学习算法&#xff0c;其损失函数采用交叉熵&…

ChatGPT研究报告:AIGC带来新一轮范式转移

本文约4000字&#xff0c;目标是快速建立AIGC知识体系&#xff0c;含有大量的计算专业名词&#xff0c;建议阅读同时扩展搜索。 一、行业现状 1、概念界定 区别于PGC与UGC不同的&#xff0c;AIGC是利用人工智能技术自动生成内容的新型生产方式。 2、数据模态 按照模态区分&a…

【计算机网络-网络层】路由选择协议

文章目录1 路由器与路由选择1.1 路由器1.2 路由表&#xff08;RIB 表&#xff09;1.2.1 路由表项1.2.2 动态路由1.2.3 静态路由1.2.4 直连路由1.3 转发表&#xff08;FIB 表&#xff09;1.4 自治系统 AS2 内部网关协议 IGP——路由信息协议 RIP2.1 RIP 规定2.2 RIP 的工作原理2…

GPT系列论文

目录 GPT 无监督预训练 有监督微调 如何将模型应用于下游任务&#xff1f; 试验结果 GPT-2 摘要 Introduction Approach 数据集&模型 试验结果 GPT-3 核心点 名词解释 few-shot做法图示 数据集 GPT 由无监督预训练有监督微调组成 无监督预训练 有监督微调 …

ICLR 2023 | 达摩院开源轻量人脸检测DamoFD

团队模型、论文、博文、直播合集&#xff0c;点击此处浏览 一、论文 本文介绍我们被机器学习顶级国际会议ICLR 2023接收的论文 “DamoFD: Digging into Backbone Design on Face Detection" 论文链接&#xff1a;https://openreview.net/pdf?idNkJOhtNKX91 开源代码&a…

云原生_kubernetes(k8s)介绍

目录 一、应用部署方式演变 二、k8s介绍 三、k8s的组件 四、k8s中的概念 五、k8s资源管理方式 1、命令式对象管理 2、命令式对象配置 3、声明式对象配置 一、应用部署方式演变 在部署应用程序的方式上&#xff0c;主要经历了三个时代&#xff1a; 1、物理机部署&#…

Vue 核心(一)

文章目录Vue 核心&#xff08;一&#xff09;一、 Vue 简介1、 概述2、 学前准备3、 第一个程序二、 模板语法三、 数据绑定四、 MVVM 模型五、 数据代理1、 defineProperty2、 理解数据代理3、 Vue中的数据代理六、 事件处理1、 事件的基本使用2、 键盘事件七、 计算属性与监视…

难以置信,已经有人用 ChatGPT 做 Excel 报表了?

要问2023年初科技领域什么最火&#xff0c;那自然是 ChatGPT。 ChatGPT 由人工智能研究实验室 OpenAI 于2022年11月30日推出。上线短短5天&#xff0c;用户数量已突破100万&#xff0c;在今年2月份&#xff0c;用户数量已经突破1亿。 ChatGPT 是一个超级智能聊天机器人&#…

GitLab CI/CD 新书发布,助企业降本增效

前言 大家好&#xff0c;我是CSDN的拿我格子衫来&#xff0c; 昨天我的第一本书《GitLab CI/CD 从入门到实战》上架啦&#xff0c;这是业内第一本详细讲解GitLab CI/CD的书籍。 历经无数个日夜&#xff0c;最终开花结果。感触良多&#xff0c;今天就借这篇文章来谈一谈这本书的…

贯穿设计模式第一话--单一职责原则

&#x1f973;&#x1f973;&#x1f973; 茫茫人海千千万万&#xff0c;感谢这一刻你看到了我的文章&#xff0c;感谢观赏&#xff0c;大家好呀&#xff0c;我是最爱吃鱼罐头&#xff0c;大家可以叫鱼罐头呦~&#x1f973;&#x1f973;&#x1f973; 从今天开始&#xff0c;将…

基于51单片机的智能婴儿看护床设计

需要源码及原理图文件请私信&#xff01;&#xff01;&#xff01;&#xff01; 基于51单片机的智能婴儿看护床设计1、引言2、功能设计系统结构框图3、系统硬件设计3.1声音电路的设计3.2语音播报电路的设计3.3独立按键电路的设计3.4模拟摇床&#xff08;步进电机驱动电路&#…

Springboot项目快速实现过滤器功能

前言很多时候&#xff0c;当你以为掌握了事实真相的时间&#xff0c;如果你能再深入一点&#xff0c;你可能会发现另外一些真相。比如面向切面编程的最佳编程实践是AOP&#xff0c;AOP的主要作用就是可以定义切入点&#xff0c;并在切入点纵向织入一些额外的统一操作&#xff0…

尚硅谷大数据技术Spark教程-笔记01【Spark(概述、快速上手、运行环境、运行架构)】

视频地址&#xff1a;尚硅谷大数据Spark教程从入门到精通_哔哩哔哩_bilibili 尚硅谷大数据技术Spark教程-笔记01【Spark(概述、快速上手、运行环境、运行架构)】尚硅谷大数据技术Spark教程-笔记02【SparkCore(核心编程、案例实操)】尚硅谷大数据技术Spark教程-笔记03【SparkSQL…

Scala之面向对象(2)

目录 单例对象&#xff08;伴生对象&#xff09;&#xff1a; 创建对象常用的两种方法&#xff1a; &#xff08;1&#xff09;使用构造器构造&#xff08;new&#xff09; &#xff08;2&#xff09;使用静态方法 伴生对象的定义&#xff1a; apply方法&#xff1a; app…

图像分割技术及经典实例分割网络Mask R-CNN(含基于Keras Python源码定义)

图像分割技术及经典实例分割网络Mask R-CNN&#xff08;含Python源码定义&#xff09; 文章目录图像分割技术及经典实例分割网络Mask R-CNN&#xff08;含Python源码定义&#xff09;1. 图像分割技术概述2. FCN与语义分割2.1 FCN简介2.2 反卷积2.2 FCN与语义分割的关系3. Mask …