动态网页抓取(编写一个程序时所的相关概念(一)_光明网)

优采云 发布时间: 2021-09-15 08:28

  动态网页抓取(编写一个程序时所的相关概念(一)_光明网)

  在本节中,我们将学习静态网页和动态网页的概念。如果您熟悉前端语言,则可以快速理解本节

  在编写爬虫程序之前,我们应该首先弄清楚要爬虫的页面是静态的还是动态的。只有确定了页面类型,才能方便后续的网页分析和编程。对于不同的网页类型,编写爬虫程序所使用的方法也不同

  静态网页静态网页是一个标准的HTML文件,可以通过get请求方法直接获取。文件扩展名为。HTML,。网页可以收录文本、图像、声音、flash*敏*感*词*、客户端脚本和其他插件。静态网页是网站构建的基础。早期的网站通常由静态网页生成。静态不是静态的,它还收录一些*敏*感*词*效果,这不应该被误解

  我们知道当网站信息量较大时,网页的生成速度会降低。由于静态网页的内容相对固定,不需要连接后台数据库,响应速度非常快。然而,静态网页更新更麻烦。每次更新都需要重新加载整个网页

  静态网页的数据都收录在HTML中,因此爬虫可以直接从HTML中提取数据。通过对静态网页的URL进行分析,找出URL查询参数的变化规律,实现网页爬行。与动态网页相比,静态网页对搜索引擎收录更友好@

  动态网页动态网页是指采用动态网页技术的网页,如Ajax(用于创建交互式和快速动态网页应用程序的网页开发技术)、ASP(用于创建动态交互式网页和构建强大web应用程序的技术)、JSP(用java语言创建动态网页的技术标准)等,不需要重新加载整个网页内容即可实现网页的本地更新

  动态页面采用动态页面技术与服务器交换少量数据,实现网页的异步加载。举一个具体例子:打开百度图片()和搜索python。当您滚动鼠标滚轮时,网页将自动从服务器数据库加载数据并呈现页面。这是动态网页和静态网页之间最基本的区别。如下所示:

  

  图3:动态网页(点击查看高清图片)

  除了HTML标记语言外,动态网页还收录一些具有特定功能的代码,这些代码使浏览器和服务器能够进行交互,服务器会根据客户端的不同请求生成网页,这涉及到数据库连接、访问、查询等一系列IO操作,因此其响应是peed比静态网页稍微差一点

  注:一般采用网站动静结合的方式来达到平衡状态,请参考网站建筑动静结合的简要理解

  当然,动态网页也可以是纯文本,网页也可以收录各种*敏*感*词*效果,这些都只是网页内容的表现形式,其实不管网页是否有动态效果,只要采用动态网站技术,这个网页就叫做动态网页

  捕获动态网页的过程比较复杂,需要通过动态数据包捕获来获取客户端和服务器之间的JSON数据,捕获数据包时可以使用Google browser developer模式(快捷键:F12)Network option,然后点击XHR找到获取JSON数据的URL,如下图:

  

  图4:Chrome抓取数据包(点击查看高清图片)

  或者您也可以使用专业的数据包捕获工具Fiddler(单击访问)。动态网页的数据捕获将在后续内容中详细说明

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线