爬虫简介
通信协议
端口
我们想要进行数据通讯分几步?
- 找到对方IP
- 数据要发送到对方指定的应用程序上。为了标识这些应用程序,所以给这些网络应用程序都用数字进行了标识。为了方便称呼这个数字,我们将它叫做端口。这里的端口,我们一般都叫做逻辑端口。
- 定义通讯规则。这个通讯规则我们一般称之为协议。
通讯协议
- 国际组织定义了通用的通信协议TCP/IP协议
- 所谓协议就是指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规则或规定
- 我们常用的协议有HTTP协议,又叫做超文本传输协议,HTTP的端口是80
网络模型
网络模型最早出现的是ISO(国际标准化组织)定义的OSI参考模型,后来才有了TCP/IP参考模型。
OSI是一个理论模型
OSI参考模型 |
---|
应用层 |
表示层 |
会话层 |
传输层 |
网络层 |
数据链路层 |
物理层 |
TCP/IP则应用到实际中
TCP/IP参考模型 |
---|
应用层 |
传输层 |
互联网层 |
网络接口层 |
HTTPS
- HTTPS=HTTP+SSL,顾名思义,HTTPS是在HTTP的基础上加上了SSL保护壳,信息的加密过程就是在SSL中完成
- HTTPS,是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL
SSL
- SSL也是一个协议主要用于web的安全传输协议
爬虫介绍
什么是爬虫
简单一句话就是代替人去模拟浏览器进行网页操作
需要爬虫的原因
为其他程序提供数据源,如搜索引擎(百度、Google等)、数据分析、大数据等等
企业获取数据的方式
- 公司自有数据
- 第三方平台购买的数据(百度指数、数据堂)
- 爬虫爬取的数据
python做爬虫的优势
- PHP:对多线程,异步支持不太好
- Java:代码量大,代码笨重
- C/C++:代码量大,难以编写
- Python:支持模块多、代码简介、开发效率高(scapy框架)
爬虫的分类
分类 | 定义 |
---|---|
通用网络爬虫 | 例如百度、Google |
聚焦网络爬虫 | 根据既定的目标有选择的抓取某一特定主题内容 |
增量式网络爬虫 | 指对下载网页采取增量式的更新和只爬行新产生的或已经发生变化的网页爬虫 |
深层网络爬虫 | 指那些大部分内容不能通过静态链接获取的、隐藏在搜索表单背后的,只有用户提交一些关键词才能获得的web页面。如,用户登录注册才能访问的页面 |