HTTP协议:
超文本传输协议(Hypertext Transfer Protocol):基于“请求与响应”模式的、无状态的应用层协议。
1.URL格式:
http://host[:port][path]
host:合法的Internet主机域名或IP地址
port:端口号,缺省端口为80
path:请求资源的路径
例:
http://www.xxxx.edu.cn/ (杜撰的)
http://192.144.22.223/duty (杜撰的,如撞中ip,实在抱歉)
HTTP URL的理解:
URL是通过HTTP协议存取资源的Internet路径,一个URL对应一个数据资源。
2.HTTP对资源的操作:
GET: 请求获取URL位置的资源
HEAD: 请求获取URL位置资源的响应报告,即获取该资源的头部信息
POST: 请求向URL位置的资源后附加新的数据
PUT: 请求URL位置存储一个资源,覆盖原URL位置的资源
PATCH: 请求局部更新URL位置的资源,即改变该处资源的部分内容(节省网络带宽)
DELETE: 请求删除URL位置存储的资源
使用HTTP获取网络资源时,用GET获取全部资源和HEAD获得资源的头部信息
使用HTTP发送信息,即传送资源到网上,用PUT、POST、PATCH,每次操作都是无状态的,独立的。
爬虫:
1.尺寸划分:
小规模:爬取网页、玩转网页,数据量小,速度不敏感,常用Requests库
中规模:爬取网站、系列网站,数据规模较大,爬取速度较敏感,Scrapy库
大规模:爬取全网,搜索引擎,爬取速度关键,定制开发。
2.网络爬虫限制:
(1)来源审查:判断User-Agent进行限制:(限制浏览器)
检查来访HTTP协议头的User-Agent域,只响应浏览器或友好爬虫的访问
(2)发布公告:Robots协议(Robots Exclusion Standard 网络爬虫排除协议)
3.robots协议
用法:在网站根目录下的robots.txt文件
robots基本语法示例:
User-Agent:* -->任何网络爬虫
Disallow:/?* -->不允许访问以?开头的路径
Disallow:/pop/.html -->不允许访问/pop/路径下的任何html文件
Disallow:pinpai/.html?*
4.robots协议的遵守方式
网络爬虫:自动或人工识别robots.txt,在进行爬取
约束性:Robots协议是建议但非约束性,网络爬虫可以不遵守,但要承担法律风险