Python爬虫(3) Web应用架构与协议

1.常用Web服务器软件

  • Apache
  • IIS(Internet Information Server)
  • Nginx
  • Lighttpd
  • Zeus
  • Resin
  • Tomcat

2.Web服务器应用架构

  • Clinet/Server

客户端可以是各种浏览器,也可以是爬虫程序。

  • Client/Server/Database

 在这个架构中,Web服务器上的HTML文件中通常存在一些动态脚本,这些脚本在用户请求时由Web服务器执行。

  • Web服务器集群

 为应对大量用户并发访问的情况而设计。

  •  虚拟主机

在一台服务器里配置多个网站,使得每个网站看起来具有独立的物理计算机。实现方法有:

  1. 基于IP地址的方法:在服务器里绑定多个IP,配置Web服务器,把网站绑定在不同的IP上。
  2. 基于端口的方法:不同网站共享一个IP地址,但是通过不同的端口实现对不同网站的访问。
  3. 基于主机名的方法:设置DNS将多个域名解析到同一个IP地址上,IP地址对应的服务器上配置Web服务端,添加多个网站,为每个网站设定一个主机名。

3.Web页面类型

Web页面的组成部分:内容、结构、表现效果和行为。

根据Web页面组成结构中的信息内容的生成方式,可将Web页面分成以下三种类型。

  • 静态型:以HTML文件的形式存在于Web服务器的硬盘上,内容、结构和表现效果是固定的,行为也比较简单。除了Web服务外,不需要其他服务的支持,对服务器的资源消耗少。
  • 动态性
  1. 页面内容是可变的。
  2. 页面结构也是允许变化的。
  3. 在表现效果上,页面中不同部分的效果会随着内容的变化而变化。
  4. 页面行为是区别于静态页面最主要的特征。动态页面并不是直接把内容存储到文件中,而是要进一步执行内容生成步骤,通常的方式有访问数据库等。
  • 伪静态型:以静态页面展现出来,但实际上是用动态脚本来处理的。伪静态页面的URL本质上可以理解为不带“=”的参数。

4.Robots协议(Robots Exclusion Protocol)

指定了某种标识的爬虫能够抓取的目录或不能抓取的目录,也就是访问许可策略。

在网站首页的地址后面添加“/robots.txt”即可访问。

  • 文件中包含一个或多个记录,每个记录由一个或多个空白行隔开。

  • User-Agent:

  • Allow 或 Disallow:

Disallow指定的字段值可以是一个全路径,也可以是部分路径。

  • 通配符的使用
  1. * 代表0个或多个任意字符
  2. $ 表示行结束符
  • 抓取延时(Crawl - delay):规定爬虫程序两次访问网站的最小时间延时(以秒为单位)。
  • 访问时段(Visit - time):规定爬虫程序访问网站的时间。
  • 抓取频率(Request - rate):限定URL读取频率。
  • Robots版本号(Robot - version) 

5.HTTP协议

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值