爬虫可以理解为模拟用户在浏览器或者某个应用上的操作,把操作的过程、实现自动化的程序或脚本。
爬虫是如何实现的呢?
想知道如何实现爬虫,需要先了解在浏览网页的时候都发生了什么事情?知其然,更要知其所以然!
接下来我们通过示例说明实现爬虫的基本原理。
当我们在浏览器中输入网址www.baidu.com
后回车发生了什么?
我们来看看这张图:
浏览器与服务器之间的交互过程说明:
- 浏览器询问DNS服务器获取
www.baidu.com
的真实IP地址; - 返回真实的IP地址给浏览器;
- 浏览器使用
真实IP地址
连接www.baidu.com
的Web服务器,请求页面数据。 www.baidu.com
的Web服务器接收到这个请求后,响应并返回页面文档数据给浏览器。- 可以愉快的看到页面啦。
整个过程中的关键信息为:
- 浏览器与服务器之间的网络通信协议: HTTP协议
- 浏览器与服务器之间的数据格式: HTML超文本标记格式
HTTP协议
的作用是建立浏览器
与Web服务器
之间的通信连接通道, 这个通信通道可以传一段文本信息、一个图片或者一个文件都可以。这是数据传输的基础。
HTML超文本标记语言格式
的作用是告诉浏览器
应该如何显示收到的文档数据。
注:暂时忽略DNS服务器交互过程,这与爬虫逻辑无关,它只于获取IP地址速度有关。
爬虫原理本质?
如果理解了上面的示例交互过程,那么对于理解爬虫
的本质就不难了。
我们的爬虫
本质就是在使用HTTP协议
来模拟浏览器行为与Web服务器
交互获取HTML
页面数据并解析处理的工具。
那么HTTP协议
到底是什么呢?HTML超文本标记语言
又是怎样描述Web页面的呢?
接下来我们就来一个一个的学习。提升自己的内功就在于点滴的积累。
关于电子书
博客会定期更新爬虫知识!如果你希望获取电子书,可以点击下方链接获取.