初识网络爬虫(一)

什么是网络爬虫

网络爬虫又称网络蜘蛛、网络机器人,它是一种按照一定的规则自动浏览、检索网页信息的程序或者脚本。网络爬虫能够自动请求网页,并将所需要的数据抓取下来。通过对抓取的数据进行处理,从而提取出有价值的信息。

我们所熟悉的一系列搜索引擎都是大型的网络爬虫,比如百度、搜狗、360浏览器、谷歌搜索等等。每个搜索引擎都拥有自己的爬虫程序,比如 360 浏览器的爬虫称作 360Spider,搜狗的爬虫叫做 Sogouspider。

爬虫分类

爬虫可分为三大类:通用网络爬虫、聚焦网络爬虫、增量式网络爬虫。

通用网络爬虫:是搜索引擎的重要组成部分,上面已经进行了介绍,这里就不再赘述。通用网络爬虫需要遵守 robots 协议,网站通过此协议告诉搜索引擎哪些页面可以抓取,哪些页面不允许抓取。

robots 协议:是一种“约定俗称”的协议,并不具备法律效力,它体现了互联网人的“契约精神”。行业从业者会自觉遵守该协议,因此它又被称为“君子协议”。
聚焦网络爬虫:是面向特定需求的一种网络爬虫程序。它与通用爬虫的区别在于,聚焦爬虫在实施网页抓取的时候会对网页内容进行筛选和处理,尽量保证只抓取与需求相关的网页信息。聚焦网络爬虫极大地节省了硬件和网络资源,由于保存的页面数量少所以更新速度很快,这也很好地满足一些特定人群对特定领域信息的需求。

增量式网络爬虫:是指对已下载网页采取增量式更新,它是一种只爬取新产生的或者已经发生变化网页的爬虫程序,能够在一定程度上保证所爬取的页面是最新的页面。

网络爬虫的原理

网络爬虫的基本工作流程图
在这里插入图片描述
1.获取初始的网络地址,该地址是用户自己制定的初始爬取的网页
2.通过爬虫代码向网页服务器发送网络请求。
3.实现网页中数据的解析,确认数据在网页代码中的位置
4.在服务器响应数据中,提取数据内容
5.实现数据的清洗,将无用的数据筛选
6.将清洗后的数据保存至本地或数据库中

HTTP基本原理

URL地址(统一资源定位符) 例如www.baidu.com
HTTP协议(超文本传输协议)是利用TCP(传输控制协议)在Web服务器和客户端之间传输信息的协议
在这里插入图片描述Web服务器工作原理可以概括为以下4步。
1.建立连接:客户端通过TCP/IP(传输控制协议、网际协议)建立到服务器的TCP连接
2.请求过程:客户端向服务端发送HTTP协议请求包,请求服务器里的资源文档。常用的请求如下表
HTTP协议常用的请求方法

方法描述
GET请求指定的页面信息,并返回响应内容
POST向指定资源提交数据进行处理请求(如提交表单或者上传文件)。数据被包含在请求体中POST请求可能会导致新的资源建立和已有的资源的修改
HEAD类似GET请求,只不过返回的响应中没有具体的内容,用于获取报文头部信息
PUT从客户端向服务器传送的数据取代指定文档内容
DELETE请求服务器删除指定的页面
OPTIONS允许客户端查看服务器的性能

3.应答过程:服务器向客户端发送HTTP协议应答包,如果请求的资源包含动态语言的内容,那么服务器会调用动态语言的解释引擎处理“动态内容”,并将处理后得到的数据返回给客户端。由客户端解释HTML(超文本标记语言)文档,并在客户端屏幕上渲染图形结果。服务器返回给客户端的状态码可以分为5种类型,例如200,表示请求成功,404表示服务器找不到给定的资源

代码含义
1**信息,请求收到,继续处理
2**成功,行为被成功地接收、理解和采纳
3**重定向,为了完成请求,必须进一步执行的动作
4**客户端错误,请求包含语法错误或者请求无法实现
5**五福段错误,服务器不能实现一种明显无效的请求

4.关闭连接:客户端与服务器断开连接

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值