Crawler_Foundation

HTTP基础

URL与URI

URI = URL + URN
其中URL与URN有交集
URL = Universal Resource Locator 统一资源定位符,
例如:

请求

请求头
  • Cookie:也常用复数形式 Cookies ,这是网站为了辨别用户进行会话跟踪而存储在用户本地
    的数据。它的主要功能是维持当前访问会话。例如,我们输入用户名和密码成功登录某个网
    站后,服务器会用会话保存登录状态信息,后面我们每次刷新或请求该站点的其他页面时,
    会发现都是登录状态,这就是 Cookies 的功能。 Cookies 里有信息标识了我们所对应的服务器
    的会话,每次浏览器在请求该站点的页面时,都会在请求头中加上 Cookies 并将其发送给服
    务器,服务器通过 Cookies 识别出是我们自己,并且查出当前状态是登录状态,所以返回结
    果就是登录之后才能看到的网页内容;
  • Referer:此内容用来标识这个请求是从哪个页面发过来的,服务器可以拿到这一信息并做相
    应的处理,如做来源统计、防盗链处理等;
  • User-Agent:简称 UA ,它是一个特殊的字符串头,可以使服务器识别客户使用的操作系统
    及版本,浏览器及版本等信息 在做爬虫时加上此信息,可以伪装为浏览器;如果不加,很
    可能会被识别为爬虫
请求体
Content-Type 提交数据的方式
application/x-www-form-urlencoded 表单数据
multipart/form-data 表单文件上传
application/json 序列化JSON数据
text/xml XML数据

响应

响应头
  • Server:务器的信息,比如名称、版本号等
  • Content-Type:文档类型,指定返回的数据类型是什么,如 text/html 代表返回 HTML 文档,application/x-javascript 则代表返回 JavaScript文件, image/jpeg则代表返回图片
  • Set-Cookie:设置 Cookies。响应头中的 Set-Cookie 告诉浏览器需要将此内容放在 Cookies中,下次请求携带 Cookies 请求。

网页基础

HTML定义了网页的内容和结构,css描述了网页的布局,JavaScript定义了网页的行为。

爬虫原理

会话与Cookies

由于关闭浏览器不会导致会话被删除,这就需要服务器为会话设置一个失效时间,当距离客户端上一次使用会话的时间超过这个失效时间时,服务器就可以认为客户端已经停止了活动,才会把会话删除以节省存储空间。

代理的基本原理

  • 高度匿名代理: 会将数据包原封不动地转发,在服务端看来就好像真的是 个普通客户端访问,而记录的 IP 是代理服务器的 IP
  • 普通匿名代理: 会在数据包上做一些改动 服务端上有可能发现这是个代理服务器,也有一定几率追查到客户端的真实IP
  • 透明代理: 不但改动了数据包 还会告诉服务器客户端的真实 IP 这种代理除了能用缓存技术提高浏览速度,能用内容过滤提高安全性之外,并无其他显著作用,最常见的例子是内网的硬件防火墙
  • 间谍代理: 指组织或个人创建的用于记录用户传输的数据,然后进行研究监控目的的代理服务器