爬虫简介

1 通讯协议

1.1端口

我们进行数据通讯需要分为3步
• 1. 找到对方ip。
• 2. 数据要发送到对方指定的应用程序上。为了标识这些应用程序,所以给这些网络应用程序都用数字进行了标识。为了方便称呼这个数字,叫做 端口。这里的端口 我们一般都叫做 ‘逻辑端口’。
• 3. 定义通讯规则。这个通讯规则我们一般称之为协议。

1.2 通讯协议

  • 国际组织定义了通用的通信协议 TCP/IP协议
  • 所谓协议就是指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规定或规则
  • HTTP又叫做超文本传输协议(是一种通信协议) HTTP 它的端口是 80

2 网络模型

爬虫简介
后期更新了新的参考模型 TCP/IP参考模型
爬虫简介

2.1HTTPS是什么

  • https=http+ssl,顾名思义,https是在http的基础上加上了SSL保护壳,信息的加密过程就是在SSL中完成的。
  • https,是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL。

2.2 SSL怎么理解

  • SSL也是一个协议主要用于web的安全传输协议
  • SSL(Secure Sockets Layer 安全套接字协议),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层与应用层之间对网络连接进行加密(转载于百度百科:https://baike.baidu.com/item/ssl/320778?fr=aladdin)
    爬虫简介

3 爬虫介绍

3.1 什么是爬虫

  • 网络爬虫(网页蜘蛛 网络机器人)
  • 就是模拟浏览器去访问和获取互联网上新的一个程序
  • 简单一句话就是代替人去模拟浏览器进行网页操作

3.2 为什么需要爬虫?

  • 为其他程序提供数据源 如搜索引擎(百度、Google等)、数据分析、大数据等等

3.3 企业获取数据的方式

  • 公司自有的数据
  • 第三方平台购买的数据(百度指数、数据堂、贵州数据交易所等等)
  • 爬虫爬取的数据

3.4 Python做爬虫的优势

  • PHP : 对多线程、异步支持不太好
  • Java : 代码量大,代码笨重
  • C/C++ : 代码量大,难以编写
  • Python : 支持模块多、代码简介、开发效率高 (scrapy框架)

3.5 爬虫的分类

  • 通用网络爬虫 例如 baidu google yahu
  • 聚焦网络爬虫: 根据既定的目标有选择的抓取某一特定主题内容
  • 增量式网络爬虫: 指对下载网页采取增量式的更新和只爬行新产生的或者已经发生变化的网页爬虫
  • 深层网络爬虫: 指那些大部分内容不能通过静态链接获取的、隐藏在搜索表单后的,只有用户提交一些关键词才能获得的web页面 例如 用户登录注册才能访问的页面