R爬虫必备基础——静态网页+动态网页

2020-07-28  本文已影响0人  Clariom

通过浏览器访问万维网中的某个网站时会从服务器得到一个超文本标记文档,然后浏览器将文档渲染后展示在显示器上,这就是我们得到的页面。页面中可以包含文本、图像、声音、FLASH动画、客户端脚本(JavaScript)和ActiveX控件等,有些页面还可以注册、登录以及显示当前用户的相关信息。R爬虫的爬取对象通常就是网页,我们需要对网页有基本的认识

浏览器从服务器得到的超文本标记文档的后缀通常分为两大类,静态页面:htm、html、shtml、xml;动态页面:asp、jsp、php、perl、cgi。两者的目标都是呈现内容给用户,都是用超文本标记语言(HTML)表示的,那两者间有什么不同?

静态网页

静态网页是指存放在服务器文件系统中实实在在的HTML文件。当用户在浏览器中输入页面的URL,然后回车,浏览器就会将对应的html文件下载、渲染并呈现在窗口中。早期的网站通常都是由静态页面制作的,现在纯静态网页比较少了。通常,使用HTML或XML即可完成静态页面的制作。

特点

不足

案例

如素材中国,静态网页,整体结构清楚简单,从网址上判断,以html后缀结尾,是典型的静态网页。

image

动态网页

动态网页是相对于静态网页而言的。当浏览器请求服务器的某个页面时,服务器根据当前时间、环境参数、数据库操作等动态的生成HTML页面,然后在发送给浏览器(后面的处理就跟静态网页一样了)。很明显,动态网页中的“动态”是指服务器端页面的动态生成,相反,“静态”则指页面是实实在在的、独立的文件。动态网页的生成技术有多种,常见的有:HTML+JavaScript(Node.js);HTML+PHP;HTML+ASP.NET(或ASP);HTML+JSP等。

特征

不足

案例

如丁香通,是个动静态结合网站。下图则是由动态加载生成的网页,从网址上即可判断。

image

再如Pubmed,输入关键词检索lncRNA,得到如下界面,网页地址不是以常规后缀结尾,同时页面信息显示不全,需要手动点击more显示数据,这是典型的动态网页。

image

误区:会动的就是动态页面

在HTML格式的页面上,也可以出现各种动态的效果,如.GIF格式的动画、FLASH、翻滚字母等,这些“动态效果”仅仅是有客户端呈现的视觉上的动态,与动态网页并不是同一个概念。

和谐统一

静态网页和动态网页各有特点,网站采用动态网页还是静态网页主要取决于网站的功能需求和网站内容的多少,如果网站功能比较简单,内容更新量不是很大,采用纯静态网页的方式会更简单,反之一般要采用动态网页技术来实现。静态网页是网站建设的基础,静态网页和动态网页之间也并不矛盾,为了网站适应搜索引擎检索的需要,即使采用动态网站技术,也可以将网页内容转化为静态网页发布。动态网站也可以采用静动结合的原则,适合采用动态网页的地方用动态网页,如果必要使用静态网页,则可以考虑用静态网页的方法来实现,在同一个网站上,动态网页内容和静态网页内容同时存在也是很常见的事情。

总结一下

  1. 静态网页和动态网页都是网页,目前纯静态的网页比较少了,大多以动态或动静态结合常见。
  2. 静态网页不需要后台程序干预处理,直接由服务器返回,实现为静态网页后,一般不需要维护,因为数据不需要更新。
  3. 动态网页一般需要程序处理(asp,jsp,php,python,ruby等等),并由数据库提供数据支撑。
  4. R爬虫学习过程,先从简单的静态网站开始,再慢慢实践动态网页。

更多内容可关注公共号“YJY技能修炼”~~~

往期回顾
R爬虫在工作中的一点妙用
R爬虫必备基础——HTML和CSS初识

上一篇 下一篇

猜你喜欢

热点阅读