1.通讯协议
1.1什么是端口
端口就是应用程序的一种数字标识。
- 就像我们的qq软件,数字标识为3000。微信的数字标识为2000。
为了方便这个称呼,我们就把这个数字标识称为端口。
1.2 通讯协议
- 国际通用协议 TCP/IP
- 通讯协议,就是计算机通信网络中,这两台计算机进行通讯传递信息必须共同遵守的一个规定。
- HTTP协议又叫做超文本传输协议。它就是一种通讯协议。
- 我们把通讯规则一般又称为协议。
2.网络模型
数据传输模式
2.1 HTTPS
- https=http+ssl
- https是以HTTP为安全目的传输通道。https就是http的安全版,ssl就是一个安全保护层。
2.2 SSL
- SSL是一种协议,用于web安全传输协议。
3. 爬虫介绍
- 页爬虫或者是网页蜘蛛。主要的功能是下载互联网或者是局域网的各种资源。
如HTML静态页面,图像文件,js代码等 - 替人去模拟浏览器进行网页操作,获取信息。
3.1为什么需要使用爬虫?
- 为其他的数据提供数据源。比如通过搜索引擎,百度360,数据分析,大数据,AI等
- 1数据分析
抖音 用户所刷视频的数量,类型,用户的喜好。通过爬虫获取数据进行分析,所以为什么你刷抖音的时候,他会不停的给你推送你喜欢的视频。
高德地图的智能语音,智能导航。都是通过爬虫获取数据分析后的结果。
3.2 爬虫的分类
通用网络爬虫 大型的搜索引擎,比如百度谷歌,就是在搜索引擎的网页上通过输入关键字的形式大范围的去获取所需要的相关信息。
-
通用网络爬虫 从互联网中搜集网页,采集信息,这些网页信息用于为搜索引擎建立索引从而提供支持,它决定着整个引擎系统的内容是否丰富,信息是否即时,因此其性能的优劣直接影响着搜索引擎的效果。
-
通用搜索引擎大多提供基于关键字的检索,难以支持根据语义信息提出的查询,无法准确理解用户的具体需求。
-
聚焦网络爬虫 根据既定的目标,有选择性的有目的性的在互联网上获取所需要的数据。相关的针对性更强。
-
它与通用搜索引擎爬虫的区别在于: 聚焦爬虫在实施网页抓取时会对内容进行处理筛选,尽量保证只抓取与需求相关的网页信息。
3.3 企业获取数据的方式
- .1.公司⾃有的数据
- 2.第三⽅平台购买的数据 (百度指数、数据堂)
- 3.爬⾍爬取的数据
3.4 python做爬虫的优势
- PHP : 对多线程、异步⽀持不太好
- Java : 代码量⼤,代码笨重
- C/C++ : 代码量⼤,难以编写
- Python : ⽀持模块多、代码简介、开发效率⾼ (scrapy框架)
4.爬虫的基本概念
4.1 get和 post
- GET 从指定的资源请求数据
- POST 向指定的资源提交要处理的数据。
- GET与POST的区别:
- get通过url提交数据,数据在url里面可以看到。Post数据放置在实体内提交。
- get方式提交的数据最多只能为1024字节,post没有限制。
4.2 URL
- url的全称是uniform resource locator,就是统一资源定位符。在www.网上每一个信息资源都有统一的,且在网上唯一的地址,这个地址就是URL。是网络地址。就像每个人的身份证号都是唯一的。
4.2.1
大部分URL都遵循一种标准的格式。如:
- HTTP协议(http://或者https://)
- 服务器的因特网地址(www.baidu.com或者csh.joes.com)
- web服务器上的某个资源 (/spa/csh.php)
- 传某个数据给服务器上的资源(可选,?name=csh&age=25)
4.2.2
- https://new.qq.com/omn/TWF20200/TWF2020032502924000.html
-
- https: 协议
-
- new.qq.com: 主机名可以将主机理解为⼀台名叫 news.qq.com 的机器。这
台主机在 qq.com 域名下
- new.qq.com: 主机名可以将主机理解为⼀台名叫 news.qq.com 的机器。这
-
- port 端⼝号: 80 /new.qq.com 在他的后⾯有个 :80 可以省略
-
- TWF20200/TWF2020032502924000.html 访问资源的路径
-
anchor: 锚点⽤前端在做⻚⾯定位的
-
- 注意 : 在浏览器请求⼀个url,浏览器会对这个url进⾏⼀个编码。(除英⽂字
⺟、数字和部分标识其他的全部使⽤% 加 ⼗六进制码进⾏编码)
- 注意 : 在浏览器请求⼀个url,浏览器会对这个url进⾏⼀个编码。(除英⽂字
4.3 User-Agent用户代理
- 作⽤:记录⽤户的浏览器、操作系统等,为了让⽤户更好的获取HTML⻚⾯效果
-
- User-Agent:
- Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36
(KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36 - Mozilla Firefox:(Gecko内核)
4.4 refer
- 表明当前的请求是来自于哪个url,⼀般情况下可以⽤于反爬的技术。
4.5 状态码
- 200 : 请求成功
- 301 : 永久重定向
- 302 : 临时重定向
- 403 : 服务器拒绝请求
- 404 : 请求失败(服务器⽆法根据客户端的请求找到资源(⽹⻚))
- 500 : 服务器内部请
5.爬虫抓包工具
- 打开步骤
- 1.点开一个网也页
- 2.在网页的任意位置,右键,选择‘审查元素’
- 3。选择所需选项
- Elements : 元素 ⽹⻚源代码,提取数据和分析数据(有些数据是经过特殊处
理的所以并不是都是准确的) - Console : 控制台 (打印信息)
- Sources : 信息来源 (整个⽹站加载的⽂件)
- NetWork : ⽹络⼯作(信息抓包) 能够看到很多的⽹⻚请求