端口
- 进行数据通讯时一般需要三步
- 1.找到对方IP地址
- 2.数据发送到指定的应用程序上。为了标识这些应用程序,我们给这些网络应用程序都用数字进行了标识。为了方便称呼这个数字,我们称之为端口。这里的端口我们一般叫做逻辑端口
- 3.定义通讯规则(协议)。
通讯协议
- 国际组织定义了通用的通信协议 TCP/IP协议
- 所谓协议就是指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规则或规定
- HTTP又叫做超文本传输协议(是一种通信协议)它的端口号是80 HTTPS是在HTTP协议基础上机密形成的一种具有高安全性的超文本传输协议,它的端口号是445
网络模型
- HTTPS = HTTP + SSL 443 HTTP的安全版本
HTTP的请求与响应
- 1.当用户在浏览器的地址栏输入一个URL并按回车键之后,浏览器就会向HTTP服务器发送HTTP请求。HTTP请求主要分为“Get”和“Post”两种方法
- 2.当我们在浏览器输入URL http://www.baidu.com 的时候,浏览器就会发送一个Request请求去获取 http://www.baidu.com 的html文件,服务器把Response文件对象发送回给浏览器。
- 3.浏览器分析Response中的html文件,发现其中引用了很多其他的文件,比如Images文件,CSS文件,JS文件。浏览器会自动再次发送Request去获取图片,CSS文件,或者JS文件。
- 4.当所有的文件都下载成功之后,网页会根据HTML语法结构,完整的显示出来。
- HTTP通信由两部分组成:客户端请求消息与服务器响应消息
- General
- Response Headers 服务器的响应
- Request Headers 服务器的请求
- host
- Connection keep-alive
- User-agent
- Referer
- Cookie
- Query String Paramaters 参数信息
- General
爬虫简介
爬虫介绍
- 什么是爬虫?
- 网络爬虫,又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者,是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本,另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。
- 简单理解 代替人去模拟浏览器进行网页操作
- 为什么需要爬虫?
- 提供数据源
- 数据分析
- AI人工智能(智能家居、无人驾驶、智能语音、智能导航、人脸识别……)
企业获取信息的方式
- 1.公司自有的数据
- 2.第三方平台购买的数据(百度指数、数据堂)
- 3.爬虫爬取的数据
python 做爬虫的优势
- PHP:对多线程、异步支持不太好
- Java:代码量大、代码笨重
- C/C++:代码量大,难以编写
- python:支持模块多、代码简洁、开发效率高(scrapy框架)
爬虫的分类
- 通用网络爬虫:如baidu google yahu
- 聚焦网络爬虫:根据既定的目标有选择的抓取某一特定主题内容