htmlunit抓取动态网页( 静态网页是指存放在服务器中实实在在的HTML文件中)

优采云 发布时间: 2021-10-13 06:24

  htmlunit抓取动态网页(

静态网页是指存放在服务器中实实在在的HTML文件中)

  动态网页和静态网页

  静态网页是指存储在服务器文件系统中的实际 HTML 文件。当用户在浏览器中进入页面时

  URL,然后回车,浏览器会下载、渲染并在窗口中呈现相应的 HTML 文件。早期的 网站 通常是由静态页面制作的。

  1. 动态网页

  动态网页相对于静态网页。当浏览器请求服务器的页面时,服务器根据当前时间、环境参数、数据库操作等动态生成HTML页面,然后发送给浏览器(后续处理同静态网页页)。

  显然,动态网页中的“动态”是指服务器端页面的动态生成,相反,“静态”是指页面实际的、独立的文件。

  注意:

  1.1 JavaScript

  JavaScript 是一种属于网络的脚本语言。它在Web应用程序开发中得到了广泛的应用。常用于为网页添加各种动态功能,为用户提供更流畅美观的浏览效果。LavaScript 脚本通常嵌入在 HTML 中以实现自己的功能。

  可以在网页源代码的标签中看到,如:

  JavaScript 可以动态创建 HTML 内容,只有在 JavaScript 代码执行后才会生成和显示。如果使用传统的方法采集页面内容,则只能在执行JavaScript代码之前获取页面上的内容。

  查询

  JQuery 是一个快速简洁的 JavaScript 框架,它封装了 JavaScript 常用的函数代码,提供了简单的 JavaScript 设计模式,优化了 HTML 文档操作、事件处理、*敏*感*词*设计和 Ajax 交互。-网站 使用JQuery的一个特点是源码中收录了JQuery的入口,比如:

  如果 网站 网页的源代码中出现了 jQuery,则在使用 采集 数据时必须非常小心。因为 jQuery 可以动态创建 HTML 内容,所以这些内容只有在 JavaScript 代码执行后才会生成和显示。如果使用传统的方法采集页面内容,则只能在执行JavaScript代码之前获取页面上的内容。

  1.2 阿贾克斯

  使用Ajax技术更新网页内容的网站有一个很大的特点,就是可以在不重新加载整个网页的情况下更新网页的某一部分。

  Ajax其实并不是一种语言,而是一系列用来完成网络任务的技术(可以认为类似于网络数据采集)。Ajax网站 可以在不使用整个页面加载的情况下与 web 服务器交互。

  1.3 DHTML

  DHTML:Dynamic HTML 动态HTML,这个技术并不是什么新技术,而是结合了我们之前学过的

  HTML、CSS、JavaScript集成在一起,使用S操作页面元素,使元素动态变化,使页面与用户进行交互行为。

  2. 动态网页处理方法

  使用动态加载的网站,用Python有几种方法可以解决:

  直接破解JavaScript代码中采集的内容。

  抓包解析,查看截图的请求响应信息,伪造请求,实现响应的获取。(推荐)

  使用Python的第三方库运行JavaScript,直接采集浏览器中看到的页面。(推荐)

  既然浏览器可以获取数据,那么就可以模拟一个浏览器,从浏览器中获取数据。即使用程序控制浏览器,从而达到数据采集的目的。

  文章来源:

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线