ajax抓取网页内容(HTML文档加载过程中的常见问题,你知道吗?)

优采云 发布时间: 2021-09-28 03:21

  ajax抓取网页内容(HTML文档加载过程中的常见问题,你知道吗?)

  如何抓取AJAX网站的内容?这是一个热点问题,也是一个棘手的问题。基于Javascript技术的AJAX网站的出现,改变了原来互联网内容的展示方式。过去,从浏览器的角度来看,网站要显示的内容是HTML页面文档,无论是静态网页还是服务器动态网页(例如PHP、JSP、ASP等)。 ) 都是下载到浏览器后的 HTML 文件。网站 内容抓取器的搜索引擎或网络爬虫只需要处理文本内容(HTML 文档是文本文档)。因此,正则表达式在之前的网站 内容抓取器中被广泛使用。但是,对于 AJAX 网站 内容,正则表达式几乎是不可能的。这和 AJAX 网站 一样 内容呈现的原则是相关的。除了AJAX网站页面上正常的HTML文档内容,还有Javascript代码或者Javascript代码库地址可以下载。在加载 HTML 文档期间或之后调用 Javascript(通常由加载事件)。函数或代码段。这些代码段修改了 HTML 文档的 DOM 结构,DOM 结构是 HTML 文档在浏览器窗口中显示的基础。这样,页面内容是动态生成的。这些内容可以从服务器异步计算或获取,例如使用XMLHt pRequest对象从远程服务器获取需要显示的内容。除了AJAX网站页面上正常的HTML文档内容,还有Javascript代码或者Javascript代码库地址可以下载。在加载 HTML 文档期间或之后调用 Javascript(通常由加载事件)。函数或代码段。这些代码段修改了 HTML 文档的 DOM 结构,而 DOM 结构是 HTML 文档在浏览器窗口中显示的基础。这样,页面内容是动态生成的。这些内容可以从服务器异步计算或获取,例如使用XMLHt pRequest对象从远程服务器获取需要显示的内容。除了AJAX网站页面上正常的HTML文档内容,还有Javascript代码或者Javascript代码库地址可以下载。在加载 HTML 文档期间或之后调用 Javascript(通常由加载事件)。函数或代码段。这些代码段修改了 HTML 文档的 DOM 结构,而 DOM 结构是 HTML 文档在浏览器窗口中显示的基础。这样,页面内容是动态生成的。这些内容可以从服务器异步计算或获取,例如使用XMLHt pRequest对象从远程服务器获取需要显示的内容。在加载 HTML 文档期间或之后调用 Javascript(通常由加载事件)。函数或代码段。这些代码段修改了 HTML 文档的 DOM 结构,而 DOM 结构是 HTML 文档在浏览器窗口中显示的基础。这样,页面内容是动态生成的。这些内容可以从服务器异步计算或获取,例如使用XMLHt pRequest对象从远程服务器获取需要显示的内容。在加载 HTML 文档期间或之后调用 Javascript(通常由加载事件)。函数或代码段。这些代码段修改了 HTML 文档的 DOM 结构,而 DOM 结构是 HTML 文档在浏览器窗口中显示的基础。这样,页面内容是动态生成的。这些内容可以从服务器异步计算或获取,例如使用XMLHt pRequest对象从远程服务器获取需要显示的内容。

  网站 内容捕捉软件工具包Met aSeeker直接分析DOM结构,使用XPath表达式定位捕捉到的内容,并使用XSLT对捕捉结果进行转换。因此,本质上可以比较容易的解决爬取AJAX网站内容的问题。然而,Javascript 是一种强大的编程语言。实现业务逻辑的能力远高于HTML语言。动态生成 网站 内容的方式千变万化。因此,Met aSeeker 只能分阶段逐步支持 AJAX网站 内容。对于爬虫,每个版本都会增加新的特性,解决新发现的AJAX实现方式带来的爬虫问题。从 V1. 版本开始,MetaSeeker 可以在 HTML 页面加载过程中捕获 AJAX 生成的动态内容,例如捕获 Google Adsence 广告或搜索结果以进行商业智能分析。此版本增强了捕获 AJAX 网站 内容的能力。如果这些动态内容是在加载 HTML 页面后生成的,则必须使用本节介绍的方法进行捕获。此方法也适用于使用 Javascript 函数进行抓取(例如设置 Timeout 或设置 nterval) 定期刷新网页内容的页面。手动刷新 DOM Met aSt udio 左列 DOM 树在 HTML 文档加载后自动生成。如果在加载 HTML 并修改 DOM 内容后加载 HTML 文档中的 Javascript 代码,

  这需要手动刷新 DOM 树以反映最新更改。点击菜单项H3定义网站内容抓取规则<h3>无论是数据抓取规则还是超链接抓取规则,都与普通网页的定义方法一致,见前一章。但是,在上传信息结构和抓取规则之前,您需要单击菜单项。这是一个检查类型的菜单。不要检查它。也就是说,AJAX 网页定义了信息结构,网页的内容只有在 HTML 文档加载之后。修改显示,因此不能采用正常的操作方法:“加载信息结构,立即应用信息结构分析网页内容”。操作的变化在加载信息结构进行编辑时体现。信息结构加载方法 如果需要编辑之前定义的信息结构,则需要在Schema List工作台上进行加载操作。如果遇到上一节描述的信息结构,网站内容捕获规则定义工具MetaSt udio会弹出一个对话框:信息结构加载和分析会延迟,请手动选择菜单项“Follow- up analysis”加载并分析,提示用户:虽然信息结构已经下载,但是还没有用于分析目标页面,需要手动点击菜单项,这是为了让MetaSt udio等待Javascript修改DOM,

  网站 内容爬虫DataScraper的操作Dat aScraper的操作没有变化。实际上,Dat aScraper 工作流使用专用处理器 LoadDelayedPage 来捕获此类内容。另外,由于这种网站的内容无法根据load事件判断爬取过程是否可以启动或终止,所以需要不断检测信息结构是否符合目标的结构网页直到超时,因为定义网站内容抓取规则时,至少为一个信息属性设置关键特性。有一个主题demo_qun。_fuller 在应用案例服务器上。可以使用MetaSt audio加载信息结构,体验AJAX网站内容的抓取。关于这个案例的详细描述,请参考论坛讨论。通过打开和关闭定期刷新网页的 DOM 分析。默认情况下,网站内容爬取规则生成工具Met aSt udio左栏的DOM结构会自动刷新。每当目标示例页面的内容发生变化时,Met aSt udio 的 DOM 结构也会自动刷新。如果正在为此示例页面定义信息结构,则自动刷新会影响定义操作。因此,在这种情况下,您需要关闭 DOM 自动刷新并单击菜单项 DOM。这是一个检查菜单。, 不勾选关闭自动刷新。作者:网站内容爬取规则*敏*感*词*工具Met aSt udio左栏的DOM结构自动刷新。每当目标示例页面的内容发生变化时,Met aSt udio 的 DOM 结构也会自动刷新。如果正在为此示例页面定义信息结构,则自动刷新会影响定义操作。因此,在这种情况下,您需要关闭 DOM 自动刷新并单击菜单项 DOM。这是一个检查菜单。, 不勾选关闭自动刷新。作者:网站内容爬取规则*敏*感*词*工具Met aSt udio左栏的DOM结构自动刷新。每当目标示例页面的内容发生变化时,Met aSt udio 的 DOM 结构也会自动刷新。如果正在为此示例页面定义信息结构,则自动刷新会影响定义操作。因此,在这种情况下,您需要关闭 DOM 自动刷新并单击菜单项 DOM。这是一个检查菜单。, 不勾选关闭自动刷新。作者:如果正在为此示例页面定义信息结构,则自动刷新会影响定义操作。因此,在这种情况下,您需要关闭 DOM 自动刷新并单击菜单项 DOM。这是一个检查菜单。, 不勾选关闭自动刷新。作者:如果正在为此示例页面定义信息结构,则自动刷新会影响定义操作。因此,在这种情况下,您需要关闭 DOM 自动刷新并单击菜单项 DOM。这是一个检查菜单。, 不勾选关闭自动刷新。作者:

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线