python爬虫初识

一、什么互联网

在这里插入图片描述

互联网(Internet)是全球范围内最大的计算机网络,它将数以百万计的私人、公共、学术、商业和政府网络通过一系列标准通信协议(如TCP/IP)连接起来形成的一个庞大的国际网络。

互联网的起源可以追溯到1969年,当时美国国防部高级研究计划局(ARPA)创建了ARPANET,用于军事和科研目的。经过几十年的发展,互联网已经渗透到社会的各个角落,成为现代社会信息交流、商务活动、教育、娱乐等不可或缺的基础设施。

互联网与传统行业结合,催生了新的经济社会发展形态——“互联网+”。这一概念最早由易观国际于2012年提出,旨在通过互联网平台和信息通信技术,将互联网与传统行业深度融合,从而创造新的发展生态。这种模式不仅优化了资源配置,提升了生产力,还推动了社会经济的全面进步。

此外,互联网受欢迎的原因还在于其低成本和高效率。具体来说,它能够降低交易成本,例如淘宝网通过缩短中间环节,使得商品价格更低。同时,互联网节约了时间,使人们可以在任何时间获取新闻、进行交流,而不再受传统媒体的时间限制。

总的来说,互联网作为当代最重要的技术和产业之一,已经深刻改变了人们的生活、工作和学习方式。从提供信息服务到推动经济发展,互联网在现代社会中扮演着不可替代的角色。未来,随着技术的不断进步和应用的深入,互联网将继续引领社会的创新和发展。

二.HTTP基本原理

我们会详细了解 HTTP 的基本原理,了解在浏览器中敲入 URL 到获取网页内容之间发生了什么。了解了这些内容,有助于我们进一步了解爬虫的基本原理。

什么是URI和URL和URN

现在看一下这三者的关系
在这里插入图片描述
URL统一资源定位符,而URN统一资源名称

**URI(Uniform Resource Identifier,统一资源标识符)**是一个通用的概念,用于唯一标识一个资源。它包括了URL(Uniform Resource Locator,统一资源定位符)和URN(Uniform Resource Name,统一资源名称)。URL不仅标识资源,还提供了资源的位置信息,如协议类型(如HTTPS)、服务器地址、端口号以及资源的路径等。URN仅提供资源的名称,而不指定其位置,比如一本书的ISBN号就是一个URN,但它本身并不提供如何找到这本书的信息。

什么是超文本

超文本是一种通过超链接将不同文本信息组织在一起的网状文本,它允许用户在一个文档中点击链接以跳转到另一个文档或特定部分。这种非线性的信息组织方式极大地促进了信息的共享和传播,是现代万维网的核心技术之一。

超文本的概念最早由泰德·尼尔森在1960年代提出,它是一种能够链接不同文本的技术,用于信息的组织和检索。在万维网中,超文本通过HTML实现,使用标签定义超链接,并通过href属性指定链接的目标地址。超文本不仅包含文本,还可以涵盖图片、视频、音频等多媒体内容,这些内容也可以成为可点击的链接

HTTP 和 HTTPS

HTTP 的全称是 Hyper Text Transfer Protocol,中文名叫做超文本传输协议,HTTP 协议是用于从网络传输超文本数据到本地浏览器的传送协议,它能保证传送高效而准确地传送超文本文档。HTTP 由万维网协会(World Wide Web Consortium)和 Internet 工作小组 IETF(Internet Engineering Task Force)共同合作制定的规范,目前广泛使用的是 HTTP 1.1 版本。
HTTPS 的全称是 Hyper Text Transfer Protocol over Secure Socket Layer,是以安全为目标的 HTTP 通道,简单讲是 HTTP 的安全版,即 HTTP 下加入 SSL 层,简称为 HTTPS。

HTTPS 的工作原理

在这里插入图片描述

这张图片展示了一个基于HTTPS协议的客户端与服务器之间的通信流程。整个流程分为客户端发起请求、服务器响应和客户端处理响应三个主要部分。

客户端发起请求:

客户端通过浏览器访问https://www.runoob.com网站,向服务器发送一个HTTPS请求。
请求中包含公钥和私钥,用于加密和解密后续的通信内容。
服务器响应:

服务器接收到客户端的请求后,首先验证公钥和私钥是否匹配。
如果验证成功,服务器会生成一个新的随机密钥(key),并将其与公钥一起返回给客户端。
同时,服务器还会使用私钥对随机密钥进行加密,并将加密后的密钥发送给客户端。
客户端处理响应:

客户端收到服务器返回的公钥和加密后的随机密钥后,会使用私钥对其进行解密,以获取原始的随机密钥。
然后,客户端使用这个随机密钥对后续的通信内容进行加密,并将加密后的内容发送给服务器。
最后,服务器会使用之前生成的随机密钥对接收的内容进行解密,以获得原始信息。

HTTP的工作原理

HTTP 页面响应速度比 HTTPS 快,主要是因为 HTTP 使用 TCP 三次握手建立连接,客户端和服务器需要交换 3 个包,而 HTTPS除了 TCP 的三个包,还要加上 ssl 握手需要的 9 个包,所以一共是 12 个包。

下面是TCP的具体流程
在这里插入图片描述
第一次握手:客户端尝试连接服务器,向服务器发送 syn 包(同步序列编号Synchronize Sequence Numbers),syn=j,客户端进入 SYN_SEND 状态等待服务器确认
第二次握手:服务器接收客户端syn包并确认(ack=j+1),同时向客户端发送一个 SYN包(syn=k),即 SYN+ACK 包,此时服务器进入 SYN_RECV 状态
第三次握手:第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手

HTTP 请求过程

我们在浏览器中输入一个 URL,回车之后便会在浏览器中观察到页面内容。实际上,这个过程是浏览器向网站所在的服务器发送了一个请求,网站服务器接收到这个请求后进行处理和解析,然后返回对应的响应,接着传回给浏览器。响应里包含了页面的源代码等内容,浏览器再对其进行解析,便将网页呈现了出来,模型如图所示
在这里插入图片描述

请求

接下来,我们开始了解,http请求
HTTP请求由以下三个主要部分组成:

  1. 请求行

    • 方法:最常用的HTTP方法包括GET、POST、PUT、DELETE等,这些方法定义了客户端与服务器之间的交互类型。例如,GET用于请求资源,POST用于提交数据。

    • URL:指定请求的资源路径,即希望访问的网页或资源在服务器上的位置。

    • 协议版本:表明客户端使用的HTTP版本,以确保服务器能够正确理解客户端的请求。

  2. 请求头
    按键值对形式提供额外的信息,以帮助服务器理解请求的具体需求和能力。

    • Host:指定请求的目的地域名,帮助服务器区分来自不同域名的请求。
    • User-Agent:描述发出请求的用户代理(通常为浏览器)的信息,包括操作系统、浏览器名称及版本等。
    • Accept:告知服务器客户端能够处理的内容类型,如文本、图片等。
    • Accept-Language:声明客户端优先接受的语言。
    • Authorization:包含用于身份验证的凭证,如Token或基本认证信息。
    • Cookie:携带网站为了识别用户而存储在客户端的小型文本文件。
    • Content-Type:当请求体包含实体时,指明媒体类型,如application/json、multipart/form-data等。
    • Content-Length:如果请求体存在,表示请求体的长度。
  3. 请求体(可选):
    实际的数据内容,通常在POST、PUT等请求中使用,向服务器发送所需的数据,如表单提交的数据。

总的来说,HTTP请求是一个结构化的数据包,它通过请求行、请求头和请求体的组合来传达客户端的需求和数据到服务器,使得服务器能够根据提供的信息做出适当的响应。

响应

HTTP响应是服务器对客户端请求的回复,它包括以下几个主要部分:

  1. 状态行

    • 协议版本:显示服务器使用的HTTP版本。
    • 状态码:表示请求的处理结果,五位数代码,如200表示成功,404表示未找到,500表示服务器内部错误。
    • 状态消息:为状态码提供文本描述,例如“OK”对于200状态码。
  2. 响应头

    • Date:响应生成的日期和时间。
    • Server:服务器软件的名称和版本。
    • Content-Type:响应主体的MIME类型,如text/html。
    • Content-Length:响应主体的长度,以字节为单位。
    • Connection:管理连接的方式,如关闭连接或保持连接。
    • Set-Cookie:服务器发送给客户端的Cookies,用于追踪会话或保存用户偏好设置。
    • Cache-Control:控制如何缓存响应的指令。
    • Expires:响应过期的日期和时间。
    • Location:重定向的URL(在状态码为3xx时常用)。
  3. 响应体(可选):
    实际的数据内容,如HTML页面、图片或其他媒体。

综上,HTTP响应通过这些组成部分向客户端传达了请求处理的结果和必要的数据,客户端根据这些信息可以进行进一步的处理,如展示页面或处理错误。

三.Web网页基础

网页的组成

结构(HTML):用于描述页面的结构;

表现(CSS):用于控制页面中元素的样式;

行为(JavaScript):用于响应用户操作。

HTML是超文本标记语言(HyperText Markup Language)是一种用于创建网页的标准标记语言。HTML负责网页三个组成部分中的结构,HTML使用标签的形式来标识网页中的不同组成部分。所谓的超文本指的是超链接,使用超链接可以让我们从一个页面跳转到另一个页面。

CSS 是指层叠样式表 (Cascading Style Sheets),样式定义如何显示HTML 元素,用于控制web页面的外观。CSS负责网页三个组成部分中的表现,样式通常保存在外部的 .css 文件中。我们只需要编辑一个简单的 CSS 文档就可以改变所有页面的布局和外观。

JavaScript 是脚本语言(简称"JS"),是一种轻量级的编程语言,用于控制网页的行为。JavaScript负责网页三个组成部分中的行为,可插入 HTML 页面的编程代码,JavaScript 插入 HTML 页面后,可由所有的现代浏览器执行。

网页的结构

我们首先用例子来感受一下 HTML 的基本结构。新建一个文本文件,名称可以自取,后缀为 html,内容如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>This is a Demo</title>
</head>
<body>
<div id="container">
<div class="wrapper">
<h2 class="title">Hello World</h2>
<p class="text">Hello, this is a paragraph.</p>
</div>
</div>
</body>
</html>

这是一个基本的HTML网页结构,包括以下几个部分:

  1. <!DOCTYPE html>:声明文档类型为HTML5。
  2. <html>:HTML文档的根元素。
  3. <head>:包含元信息,如字符集、标题等。
  4. <meta charset="UTF-8">:定义文档使用的字符编码为UTF-8。
  5. <title>:设置网页标题,显示在浏览器标签页上。
  6. <body>:包含网页的所有可见内容。
  7. <div id="container">:一个带有id属性的div元素,用于包裹其他元素。
  8. <div class="wrapper">:一个带有class属性的div元素,用于包裹其他元素。
  9. <h2 class="title">Hello World</h2>:一个二级标题元素,内容为"Hello World"。
  10. <p class="text">Hello, this is a paragraph.</p>:一个段落元素,内容为"Hello, this is a paragraph."。

这个网页结构包含了一个简单的标题和一段文本,它们被包裹在一个名为"wrapper"的div元素中,而这个div元素又被另一个名为"container"的div元素包裹。这样的结构有助于组织和管理页面内容。

四.爬虫基本原理

我们先看一下基本的示例图
在这里插入图片描述
这张图展示了一个简化的网络爬虫的工作原理,按照自上而下的逻辑逐步解释如下:

  1. 初始URL:这是网络爬虫开始工作的起点。爬虫从这个URL开始,访问该网页并下载其内容。

  2. 网页抓取/下载:爬虫下载初始页面的内容,通常是一个HTML文件。

  3. 解析网页,提取有用信息和链接:下载内容后,爬虫会解析HTML代码,从中提取出有价值的信息(如文本、图片等)以及网页中的超链接。

  4. 将提取的链接放入待抓取URL队列:提取出的链接会被添加到待抓取URL队列中,等待进一步处理。

  5. 待抓取URL队列:这是一个URL列表,爬虫按照顺序(通常是先进先出)从队列中取出URL进行访问和下载。

  6. 已抓取URL队列:为了避免重复抓取相同的网页,爬虫会将已经访问过的URL放入已抓取URL队列中。

  7. 循环抓取:爬虫继续从待抓取URL队列中取出URL,重复上述的抓取、解析和提取链接的过程。

  8. 满足停止条件,结束抓取:爬虫会持续这个过程,直到满足某个停止条件,比如待抓取URL队列为空,或者达到了预设的抓取深度或数量。

  9. 保存数据:在抓取过程中提取的有用信息会被保存起来,这可能是存储到数据库、文件或其他数据存储系统中。

整个流程是一个循环的过程,爬虫不断地从一个链接跳到另一个链接,不断扩展其抓取范围,直到完成预定的抓取任务。在这个过程中,爬虫可能会遇到各种问题,如链接失效、网页结构变化等,需要相应的逻辑来处理这些异常情况。

五 会话和Cookies

Cookie和会话是两种不同的技术,它们在Web开发中用于跟踪用户状态和保持用户信息。下面是它们之间的主要区别:

  1. 存储位置:Cookie存储在客户端(浏览器),而会话数据存储在服务器端。
  2. 生命周期:Cookie可以设置过期时间,过期后会被删除;会话通常在用户关闭浏览器或长时间不活动后自动失效。
  3. 安全性:由于Cookie存储在客户端,因此可能存在安全风险,如跨站脚本攻击(XSS)和跨站请求伪造(CSRF)。相比之下,会话数据存储在服务器端,相对更安全。
  4. 容量:Cookie的大小受限于浏览器的限制,通常不超过4KB。而会话数据可以在服务器端存储更多的信息。
  5. 用途:Cookie主要用于记住用户的偏好设置、登录状态等,而会话主要用于跟踪用户在网站上的活动,如购物车内容、页面访问历史等。
  6. 管理方式:Cookie可以通过JavaScript代码进行操作,而会话数据通常由服务器端的编程语言(如PHP、Python、Java等)进行管理。

六 代理基本原理

基本原理

我们在做爬虫的过程中经常会遇到这样的情况,最初爬虫正常运行,正常抓取数据,一切看起来都是那么美好,然而一杯茶的功夫可能就会出现错误,比如 403 Forbidden,这时候打开网页一看,可能会看到 “您的 IP 访问频率太高” 这样的提示。出现这种现象的原因是网站采取了一些反爬虫措施。比如,服务器会检测某个 IP 在单位时间内的请求次数,如果超过了这个阈值,就会直接拒绝服务,返回一些错误信息,这种情况可以称为封 IP。

既然服务器检测的是某个 IP 单位时间的请求次数,那么借助某种方式来伪装我们的 IP,让服务器识别不出是由我们本机发起的请求,不就可以成功防止封 IP 了吗?

一种有效的方式就是使用代理,后面会详细说明代理的用法。在这之前,需要先了解下代理的基本原理,它是怎样实现 IP 伪装的呢?

在这里插入图片描述
这张图展示了代理服务器在客户端和目标服务器之间进行中介的基本工作流程。

  1. 客户端请求:客户端(如您的浏览器)向代理服务器发送一个请求,这个请求可能是获取一个网页、一个文件或任何其他网络资源。

  2. 接收并处理请求:代理服务器接收到客户端的请求后,可能会进行一些处理工作。这包括检查请求的有效性、添加或删除请求头信息、进行用户身份验证等。

  3. 转发请求:一旦代理服务器处理完请求(可能还会修改请求),它会将请求转发给目标服务器。目标服务器是请求资源的原始位置。

  4. 目标服务器响应:目标服务器收到请求后,会生成一个响应,比如返回请求的网页内容。

  5. 接收并处理响应:代理服务器接收到目标服务器的响应后,同样可能会对响应进行一些处理。这可能包括缓存响应内容、过滤广告或恶意软件、压缩数据等。

  6. 返回响应给客户端:最后,代理服务器将处理后的响应返回给客户端,客户端再将响应内容呈现给用户。

在整个过程中,代理服务器可以提供额外的功能,如安全性增强(通过防火墙规则)、匿名性(隐藏客户端IP地址)、速度提升(通过缓存)等。此外,代理可以是透明的(客户端不知道其存在)或非透明的(客户端需要配置以使用代理)。

代理实际上指的就是代理服务器,英文叫作 proxy server,它的功能是代理网络用户去取得网络信息。形象地说,它是网络信息的中转站。在我们正常请求一个网站时,是发送了请求给 Web 服务器,Web 服务器把响应传回给我们。如果设置了代理服务器,实际上就是在本机和服务器之间搭建了一个桥,此时本机不是直接向 Web 服务器发起请求,而是向代理服务器发出请求,请求会发送给代理服务器,然后由代理服务器再发送给 Web 服务器,接着由代理服务器再把 Web 服务器返回的响应转发给本机。这样我们同样可以正常访问网页,但这个过程中 Web 服务器识别出的真实 IP 就不再是我们本机的 IP 了,就成功实现了 IP 伪装,这就是代理的基本原理。

代理的作用

那么,代理有什么作用呢?我们可以简单列举如下。

突破自身 IP 访问限制,访问一些平时不能访问的站点。

访问一些单位或团体内部资源,如使用教育网内地址段免费代理服务器,就可以用于对教育网开放的各类 FTP 下载上传,以及各类资料查询共享等服务。

提高访问速度,通常代理服务器都设置一个较大的硬盘缓冲区,当有外界的信息通过时,同时也将其保存到缓冲区中,当其他用户再访问相同的信息时, 则直接由缓冲区中取出信息,传给用户,以提高访问速度。

隐藏真实 IP,上网者也可以通过这种方法隐藏自己的 IP,免受攻击,对于爬虫来说,我们用代理就是为了隐藏自身 IP,防止自身的 IP 被封锁。

爬虫代理

对于爬虫来说,由于爬虫爬取速度过快,在爬取过程中可能遇到同一个 IP 访问过于频繁的问题,此时网站就会让我们输入验证码登录或者直接封锁 IP,这样会给爬取带来极大的不便。

使用代理隐藏真实的 IP,让服务器误以为是代理服务器在请求自己。这样在爬取过程中通过不断更换代理,就不会被封锁,可以达到很好的爬取效果。

代理分类

1.根据协议区分

根据代理的协议,代理可以分为如下类别:

FTP 代理服务器,主要用于访问 FTP 服务器,一般有上传、下载以及缓存功能,端口一般为 21、2121 等。

HTTP 代理服务器,主要用于访问网页,一般有内容过滤和缓存功能,端口一般为 80、8080、3128 等。

SSL/TLS 代理,主要用于访问加密网站,一般有 SSL 或 TLS 加密功能(最高支持 128 位加密强度),端口一般为 443。

RTSP 代理,主要用于 Realplayer 访问 Real 流媒体服务器,一般有缓存功能,端口一般为 554。

Telnet 代理,主要用于 telnet 远程控制(黑客入侵计算机时常用于隐藏身份),端口一般为 23。

POP3/SMTP 代理,主要用于 POP3/SMTP 方式收发邮件,一般有缓存功能,端口一般为 110/25。

SOCKS 代理,只是单纯传递数据包,不关心具体协议和用法,所以速度快很多,一般有缓存功能,端口一般为 1080。SOCKS 代理协议又分为 SOCKS4 和 SOCKS5,SOCKS4 协议只支持 TCP,而 SOCKS5 协议支持 TCP 和 UDP,还支持各种身份验证机制、服务器端域名解析等。简单来说,SOCK4 能做到的 SOCKS5 都可以做到,但 SOCKS5 能做到的 SOCK4 不一定能做到。

2. 根据匿名程度区分

根据代理的匿名程度,代理可以分为如下类别。

高度匿名代理,高度匿名代理会将数据包原封不动的转发,在服务端看来就好像真的是一个普通客户端在访问,而记录的 IP 是代理服务器的 IP。

普通匿名代理,普通匿名代理会在数据包上做一些改动,服务端上有可能发现这是个代理服务器,也有一定几率追查到客户端的真实 IP。代理服务器通常会加入的 HTTP 头有 HTTP_VIA 和 HTTP_X_FORWARDED_FOR。

透明代理,透明代理不但改动了数据包,还会告诉服务器客户端的真实 IP。这种代理除了能用缓存技术提高浏览速度,能用内容过滤提高安全性之外,并无其他显著作用,最常见的例子是内网中的硬件防火墙。

间谍代理,间谍代理指组织或个人创建的,用于记录用户传输的数据,然后进行研究、监控等目的代理服务器。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java 后端已经过时的技术,也是我逝去的青春

最近这段时间收到了一些读者的私信&#xff0c;问我某个技术要不要学&#xff0c;还有一些的同学竟然对 Java 图形化很感兴趣&#xff0c;还想找这方面的工作。 我接触 Java 已近 10多年了&#xff0c;见证了许多 Java 技术变迁&#xff0c;包括&#xff1a; JavaEE 框架&…

常见的应急救援设备有哪些_鼎跃安全

在我们的生活中&#xff0c;应急事件的发生常常是突如其来的&#xff0c;它们对人民的生命财产安全构成重大威胁&#xff0c;同时也对社会稳定提出严峻挑战。在这样的紧急情况下&#xff0c;迅速开展有效的救援工作显得尤为重要。而在整个救援过程中&#xff0c;应急设备的使用…

1-4章节复习总结

1-4章节总结 章节重点回顾-第一章-中央处理单元练习题 章节重点回顾-第一章-进制章节重点回顾-第一章-校验码奇偶校验码CRC循环冗余校验码海明码练习题 多草节重点回顾-第一草-计算机体系结构分类章节重点回顾-第一章-计算机指令练习题 章节重点回顾-第一章-指令流水线练习题 章…

canvas绘制表格

canvas绘制表格 最近在为公司产品做技术预研&#xff0c;经理让用canvas做一个表格&#xff0c;于是就有了这篇博客。 我们的数据是后端通过MQTT推送过来的 我在代码中也直接使用了 具体MQTT的实现代码&#xff0c;可见博客 在vue使用MQTT 在这里为了方便实用我直接封装成组件…

POI 快速入门 Excel导入导出

Excel导入导出 1 什么是POI POI简介&#xff08;Apache POI&#xff09;&#xff0c;Apache POI是Apache软件基金会的开放源码函式库&#xff0c;POI提供API给Java程序对Microsoft Office格式档案读和写的功能。 Apache POI官网http://poi.apache.org/ HSSF &#xff0d; 提…

攻防世界之《这个按钮做什么》题解

下载解压后&#xff0c;发现只有一个文件。 放入exeinfope软件里看看 根据activity猜测可能是安卓软件&#xff0c;修改文件后缀为.apk 然后用模拟器打开这个软件并会自动安装。 打开软件界面如下&#xff1a; 看得出来只有一个密码输入框&#xff0c;应该找到对应的密码就会…

每日一面系列之美团面试拷打:ConcurrentHashMap 为何不能插入 null?HashMap 为何可以

ConcurrentHashMap 为什么 key 和 value 不能为 null&#xff1f; ConcurrentHashMap 的 key 和 value 不能为 null 主要是为了避免二义性。null 是一个特殊的值&#xff0c;表示没有对象或没有引用。如果你用 null 作为键&#xff0c;那么你就无法区分这个键是否存在于 Concu…

仓颉语言 -- 网络编程

使用新版本 &#xff08;2024-07-19 16:10发布的&#xff09; 1、网络编程概述 网络通信是两个设备通过计算机网络进行数据交换的过程。通过编写软件达成网络通信的行为即为网络编程。 仓颉为开发者提供了基础的网络编程功能&#xff0c;在仓颉标准库中&#xff0c;用户可使用…

资源|Python入门必看书籍,适合零基础小白,附PDF

小编为初学Python的朋友们汇总了7本零基础入门书籍&#xff0c;包括Python三剑客等&#xff0c;都是在编程届多年畅销的书籍&#xff0c;也是众多从业者的选择&#xff0c;全文详细介绍了书籍主要内容&#xff0c;有需要的宝子根据自身情况自取 需要书籍PDF的宝子评论区留言哦 …

IIS解析漏洞~IIS6.X漏洞分析

类型代码量作用一句话木马代码量极少配合webshell管理工具使用小马代码量比小马多大马代码量最多功能比较完善&#xff08;执行命令&#xff0c;文件操作等&#xff09;图片马里面传有一句话木马 文件解析漏洞是由于中间件错误的将特殊格式的文件解析成可执行网页文件(脚本)&am…

我在高职教STM32——串口通信(4)

大家好,我是老耿,高职青椒一枚,一直从事单片机、嵌入式、物联网等课程的教学。对于高职的学生层次,同行应该都懂的,老师在课堂上教学几乎是没什么成就感的。正因如此,才有了借助 CSDN 平台寻求认同感和成就感的想法。在这里,我准备陆续把自己花了很多心思的教学设计分享…

Python机器学习实战:分类算法之支持向量机-垃圾邮件识别

为了解决特定问题而进行的学习是提高效率的最佳途径。这种方法能够使我们专注于最相关的知识和技能&#xff0c;从而更快地掌握解决问题所需的能力。 目录 支持向量机算法介绍 练习题 Python代码与分析 支持向量机和朴素贝叶斯的联系 支持向量机算法介绍 支持向量机&#…

Notepad++ 安装 compare 插件

文章目录 文章介绍对比效果安装过程参考链接 文章介绍 compare 插件用于对比文本差异 对比效果 安装过程 搜索compare插件 参考链接 添加链接描述

企业邮箱如何支持免费试用?

企业邮箱如何支持免费试用&#xff1f;Zoho企业邮箱提供多种版本&#xff0c;支持免费试用&#xff0c;具备权威认证、信息安全、全球部署等特点。试用步骤包括访问官网、选择版本、输入信息、验证域名等。特色功能包括定制化界面、搜索、日程安排等。支持多种设备和操作系统。…

腾讯服务器单机版 kafka 3.7 安装

1.Kafka是什么 Kafka是Apache开源的一款基于zookeeper协调的分布式消息系统&#xff0c;具有高吞吐率、高性能、实时、高可靠等特点&#xff0c;可实时处理流式数据。它最初由LinkedIn公司开发&#xff0c;使用Scala语言编写。 Kafka历经数年的发展&#xff0c;从最初纯粹的消…

MySQL:QEP 查询执行计划

QEP QEP 是指查询执行计划&#xff08;Query Execution Plan&#xff09;&#xff0c;它是由数据库系统在执行查询时生成的一组操作指令。这些指令定义了查询的具体执行方式&#xff0c;包括涉及哪些表、使用哪些索引、以及哪些算法、操作符等。 查询执行计划是数据库查询优化…

IT运维管理与ITSM:理论与实践

IT运维管理和IT服务管理&#xff08;ITSM&#xff09;在现代企业信息化过程中占据着举足轻重的地位。它们不仅是确保IT系统稳定运行和业务连续性的关键&#xff0c;还是推动企业数字化转型、提升竞争力的重要力量。本文将结合《IT运维管理和ITSM》文档的内容&#xff0c;深入探…

搭建日志系统ELK(二)

搭建日志系统ELK(二) 架构设计 在搭建以ELK为核心的日志系统时&#xff0c;Logstash作为日志采集的核心组件&#xff0c;负责将各个服务的日志数据采集、清洗、过滤。然而缺点也很明显&#xff1a; 占用较多的服务器资源。配置复杂&#xff0c;学习曲线陡峭。处理大数据量时…

FPGA开发——呼吸灯的另一种实现方式

一、概述 关于呼吸灯的设计其实在前面的文章中就已经提到过&#xff0c;这篇文章更多的针对前面的实现方式进行一个改良。在前面的呼吸灯的设计使用的是us、ms、s的三级计数器进行功能实现&#xff0c;这种实现方法应该是我们最后理解也是最常用的方式。但经过蜂鸣器的音乐播放…

2024第18届中国西部体育博览会诚邀代理招展

2024第18届中国西部体育博览会诚邀代理招展 2024第18届中国西部体育博览会诚邀全国各关联商会、协会&#xff0c;联盟、各专业会展公司、各关联产业园区、各关联网站报纸杂志及平台等资源方组团参展&#xff0c;组委会将给予最优惠的代理招展政策&#xff0c;群策群力共同把中…