Python爬虫

目录

1.网络爬虫

2.爬虫的分类

①通用爬虫

②聚焦爬虫

③增量式爬虫

3.反爬机制&反反爬策略

4.HTML网页(详细复习前面web知识)

5.网络请求

6.请求头常见参数

①User-Agent

②Referer

③Cookie

7.常见响应状态码

[8.URL(host、port、path ...)](#8.URL(host、port、path ...))

9.网页分类

①表层网页

②深层网页


1.网络爬虫

网络爬虫是一种按照一定的规则,自动抓取万维网信息的程序或者脚本。

网页一般由html语言进行编写,抓取其中的数据就相当于在html中找到相应的内容进行抓取。

将网页中的数据和信息保存到本地就是网络爬虫。

2.爬虫的分类

①通用爬虫

抓取系统重要组成部分。(抓取的是一整网页的数据)

②聚焦爬虫

是建立在通用爬虫的基础之上。(抓取的是页面中特定的局部内容)

③增量式爬虫

是检测网站中数据更新的情况。(只会抓取网站中最新更新的数据)

3.反爬机制&反反爬策略

反爬机制:门户网站,可以通过制定相应的策略或者技术手段,防止爬虫程序进行网站数据的爬取。

反反爬策略:爬虫程序可以通过制定相关的策略或者技术手段,破解门户网站中具有的反爬机制,从而获取门户网站。

4.HTML网页(详细复习前面web知识)

HTML网页主要由标签构成。

标签分为闭合标签和自闭和标签。

标签还包含有标签属性。

5.网络请求

已知ip想服务器发送了ip,即访问请求,服务器返回html的过程称为网络请求。

常见协议:(GET和POST最为常用)

GET:发送请求来获得服务器上的资源。

POST:向服务器提交资源让服务器处理。

HEAD:主要用来检查资源或者超链接的有效性或者是否可以打开,检查网页是否被篡改或者更新。

PUT:向指定资源位置上上传最新内容

DELETE、CONNECT、OPTIONS、TRACE...

6.请求头常见参数

①User-Agent

浏览器的名称。

②Referer

表明网页是从哪个网站转跳而来。

③Cookie

HTTP协议是无状态的。当多次请求同时发送时,使用Cookie作为区分。

7.常见响应状态码

状态码 含义

200 请求成功

301 永久重定向,资源(网页等)被永久转移到其他URL

404 请求的资源(网页)不存在

500 内部服务器错误

8.URL(host、port、path ...)

URL表示统一资源定位符,俗称网址。

每一个信息资源在网上都有唯一的一个网址,这就是URL。

URL遵守以下法则:scheme-定义因特网服务类型,即访问因特网的协议。常见协议有:https、http、ftp、file。

  • http:明文传输,不安全,容易被截取到相关信息。

  • https:加密传输,相对安全。

  • ftp:qq传输文件时,就会遵循ftp协议。

  • file:本地文件访问时遵循的协议。

host:主机名、域名

port:定义主机上的端口号(http默认端口号是80;https默认端口号443)

path:定义服务器上的路径

9.网页分类

网页按存在方式可以分为两类:

①表层网页

传统引擎可以索引的页面,主要以超链接就可以达到的静态网页构成的网页。

②深层网页

深层网页是指大部分内容无法通过静态链接获取,只能通过用户提交的一些 关键词才能获取。

相关推荐
wanderist.几秒前
C++输入输出的一些问题
开发语言·c++·图论
PXM的算法星球2 分钟前
用 semaphore 限制 Go 项目单机并发数的一次流量控制优化实践
开发语言·后端·golang
寻星探路6 分钟前
【算法专题】哈希表:从“两数之和”到“最长连续序列”的深度解析
java·数据结构·人工智能·python·算法·ai·散列表
@zulnger9 分钟前
python 学习笔记(闭包)
笔记·python·学习
SHolmes185410 分钟前
Python all函数 判断是否同时满足多个条件
java·服务器·python
inksci10 分钟前
Python 中使用 SQL 连接池
服务器·数据库·python
子午14 分钟前
【2026原创】中草药识别系统实现~Python+深度学习+模型训练+人工智能
人工智能·python·深度学习
洛克大航海15 分钟前
Python 在系统 Windows 和 Ubuntu 中创建虚拟环境
windows·python·ubuntu·虚拟环境
ZEERO~17 分钟前
@dataclass的作用
开发语言·windows·python
南行*24 分钟前
C语言Linux环境编程
linux·c语言·开发语言·网络安全