Python爬虫基础之爬虫的分类知识总结


Posted in Python onMay 13, 2021

一、通用爬虫

通用网络爬虫是搜索引擎抓取系统(Baidu、Google、Sogou等)的一个重要组成部分。主要目的是将互联网上的网页下载到本地,形成一个互联网内容的镜像备份。为搜索引擎提供搜索支持。

Python爬虫基础之爬虫的分类知识总结

第一步

搜索引擎去成千上万个网站抓取数据。

第二步

搜索引擎通过爬虫爬取到的网页,将数据存入原始页面数据库(也就是文档库)。其中的页面数据与用户浏览器得到的HTML是完全—样的。

第三步

搜索引擎将爬虫抓取回来的页面,进行各种步骤的预处理:中文分词,消除噪音,索引处理。。。
搜索引擎在对信息进行组织和处理后,为用户提供关键字检索服务,将用户检索相关的信息展示给用户。展示的时候会进行排名。

二、搜索引擎的局限性

  • 搜索引擎抓取的是整个网页,不是具体详细的信息。
  • 搜索引擎无法提供针对具体某个客户需求的搜索结果。

聚焦爬虫

针对通用爬虫的这些情况,聚焦爬虫技术得以广泛使用。聚焦爬虫,是"面向特定主题需求"的一种网络爬虫程序,它与通用搜索引擎爬虫的区别在于:聚焦爬虫在实施网页抓取时会对内容进行处理筛选,尽量保证只抓取与需求相关的网页数据。

三、Robots协议

robots是网站跟爬虫间的协议,用简单直接的txt格式文本方式告诉对应的爬虫被允许的权限,也就是说robots.txt是搜索引擎中访问网站的时候要查看的第一个文件。当一个搜索蜘蛛访问一个站点时,它会首先检查该站点根目录下是否存在robots.txt,如果存在,搜索机器人就会按照该文件中的内容来确定访问的范围;如果该文件不存在,所有的搜索蜘蛛将能够访问网站上所有没有被口令保护的页面。——百度百科

Robots协议也叫爬虫协议、机器人协议等,全称是“网络爬虫排除标准”(Robots ExclusionProtocol),网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取,例如:

淘宝: https://www.taobao.com/robots.txt
百度: https://www.baidu.com/robots.txt

四、请求与相应

网络通信由两部分组成:客户端请求消息服务器响应消息

Python爬虫基础之爬虫的分类知识总结

浏览器发送HTTP请求的过程:

Python爬虫基础之爬虫的分类知识总结

1.当我们在浏览器输入URL https://www.baidu.com的时候,浏览器发送一个Request请求去
获取 https://www.baidu.com 的html文件,服务器把Response文件对象发送回给浏览器。

2.浏览器分析Response中的HTML,发现其中引用了很多其他文件,比如Images文件,CSS文件,JS文件。浏览器会自动再次发送Request去获取图片,CSS文件,或者JS文件。

3.当所有的文件都下载成功后,网页会根据HTML语法结构,完整的显示出来了。

实际上我们通过学习爬虫技术爬取数据,也是向服务器请求数据,获取服务器响应数据的过程。

到此这篇关于Python爬虫基础之爬虫的分类知识总结的文章就介绍到这了,更多相关Python爬虫的分类内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
在Python的Flask框架中验证注册用户的Email的方法
Sep 02 Python
浅析Python中的多条件排序实现
Jun 07 Python
Django中Model的使用方法教程
Mar 07 Python
python面向对象多线程爬虫爬取搜狐页面的实例代码
May 31 Python
PyCharm设置护眼背景色的方法
Oct 29 Python
python datetime中strptime用法详解
Aug 29 Python
python字符串反转的四种方法详解
Dec 02 Python
python编写softmax函数、交叉熵函数实例
Jun 11 Python
Matplotlib自定义坐标轴刻度的实现示例
Jun 18 Python
Python利用Faiss库实现ANN近邻搜索的方法详解
Aug 03 Python
Python代码覆盖率统计工具coverage.py用法详解
Nov 25 Python
Python爬虫模拟登陆哔哩哔哩(bilibili)并突破点选验证码功能
Dec 21 Python
pytorch中的numel函数用法说明
May 13 #Python
pytorch损失反向传播后梯度为none的问题
如何使用Python实现一个简易的ORM模型
May 12 #Python
用python删除文件夹中的重复图片(图片去重)
May 12 #Python
Pyhton模块和包相关知识总结
python 下划线的多种应用场景总结
May 12 #Python
超级详细实用的pycharm常用快捷键
You might like
投票管理程序
2006/10/09 PHP
php SQL Injection with MySQL
2011/02/27 PHP
PHP 5.3 下载时 VC9、VC6、Thread Safe、Non Thread Safe的区别分析
2011/03/28 PHP
php写的AES加密解密类分享
2014/06/20 PHP
Php-Redis安装测试笔记
2015/03/05 PHP
PHP请求远程地址设置超时时间的解决方法
2016/10/29 PHP
CI框架(ajax分页,全选,反选,不选,批量删除)完整代码详解
2016/11/01 PHP
PHP7 mongoDB扩展使用的方法分享
2019/05/02 PHP
Prototype使用指南之dom.js
2007/01/10 Javascript
让任务管理器中的CPU跳舞的js代码
2008/11/01 Javascript
Javascript 面向对象 重载
2010/05/13 Javascript
JavaScript 程序编码规范
2010/11/23 Javascript
js 定时器setTimeout无法调用局部变量的解决办法
2013/11/28 Javascript
JS小功能(button选择颜色)简单实例
2013/11/29 Javascript
快速使用Bootstrap搭建传送带
2016/05/06 Javascript
JS实现保留n位小数的四舍五入问题示例
2016/08/03 Javascript
利用jqprint插件打印页面内容的实现方法
2018/01/09 Javascript
Vue数据双向绑定的深入探究
2018/11/27 Javascript
详解Express笔记之动态渲染HTML(新手入坑)
2018/12/13 Javascript
解决vue自定义全局消息框组件问题
2019/11/22 Javascript
Nodejs封装类似express框架的路由实例详解
2020/01/05 NodeJs
[00:36]DOTA2上海特级锦标赛 LGD战队宣传片
2016/03/04 DOTA
在Python中使用HTML模版的教程
2015/04/29 Python
用python写的一个wordpress的采集程序
2016/02/27 Python
python 矩阵增加一行或一列的实例
2018/04/04 Python
Opencv+Python 色彩通道拆分及合并的示例
2018/12/08 Python
pandas ix &iloc &loc的区别
2019/01/10 Python
flask实现验证码并验证功能
2019/12/05 Python
Python字符串及文本模式方法详解
2020/09/10 Python
Python调用高德API实现批量地址转经纬度并写入表格的功能
2021/01/12 Python
为你的html5网页添加音效示例
2014/04/03 HTML / CSS
澳大利亚快时尚鞋类市场:Billini
2018/05/20 全球购物
管理部部长岗位职责
2013/12/05 职场文书
保护环境建议书400字
2014/05/13 职场文书
2015大学迎新晚会主持词
2015/07/16 职场文书
高一军训感想
2015/08/07 职场文书