[发明专利]基于Ajax的新闻网页动态数据的抓取方法及系统有效
申请号: | 201611243223.6 | 申请日: | 2016-12-29 |
公开(公告)号: | CN106649810B | 公开(公告)日: | 2019-05-28 |
发明(设计)人: | 张子扬;韩强;梁成福;李广庆;李滨 | 申请(专利权)人: | 山东舜网传媒股份有限公司 |
主分类号: | G06F16/951 | 分类号: | G06F16/951;G06F16/953;G06F16/958 |
代理公司: | 济南圣达知识产权代理有限公司 37221 | 代理人: | 黄海丽 |
地址: | 250000 山东省济南市*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 ajax 新闻 网页 动态 数据 抓取 方法 系统 | ||
本发明公开了基于Ajax的新闻网页动态数据的抓取方法及系统;建立新闻网页爬取内容数据库,设置新闻网页爬取内容数据库的编码方式;获得待抓取新闻网页的新闻列表页面的URL地址;访问URL地址,判断新闻列表页面是否是通过Ajax动态加载数据的;如果是,通过浏览器开发者工具找到请求的数据源;判断请求的数据源的编码方式是否一致,如果否,则对数据源进行编码转换,解析数据格式:将数据源的格式解析成为新闻列表页面的后台语言处理的对象格式或者数组格式;将解析后的数据封装成对象或数组类型;判断封装是否成功,成功就将数据对象或数组类型遍历输出列表;利用网络爬虫采集得到的输出列表;将采集到的数据存储到数据库中。
技术领域
本发明涉及一种基于Ajax的新闻网页动态数据的抓取方法及系统。
背景技术
目前,新闻网站的信息具有类别繁多,更新频率快,多平台发布的特点,数据的调取方式也十分灵活。很多新闻网站的页面都采用Ajax调用数据的方式,这样通过一个数据来源,可以在不同的平台进行解析,比如PC端网页和手机版网页可以共享一个数据请求,通过不同的模板来呈现出不同的排版样式。
在采集和抓取网络站点的新闻数据时,会发现很多网站数据是通过Ajax获取的动态内容,并没有一个固定的静态模板。获取数据的JavaScript脚本程序往往是在整个页面的DOM结构加载完之后才会执行。如果整个网页页面的DOM结构尚未加载完,网络爬虫访问此地的时候并不会获取到数据内容,这就大大降低了网络数据采集的效率和质量。
如果需要获取到通过Ajax请求动态加载的数据,就需要对网站的请求的数据源地址进行分析,Ajax调用的数据格式往往是JSON、JSONP、XML或Inc等格式。经过分析之后,不同网站采用的网络技术不同,所以调用Ajax请求时采取的方案也有很大差别,数据源存储的格式也是多种多样的。
通过对现有技术进行分析,发现目前并没有一个统一的自动化分析Ajax数据源的方法,已有的方法不能一次性解决所有的Ajax获取动态内容的问题。
首先,大部分的实现方法还是通过JavaScript脚本中的特征值来检索,从而进一步猜测和推断Ajax的请求内容。然而这样做并不能准确地找出想要采集的目的数据。当前来看,一个页面当中很可能包含多个Ajax请求,有些是关于用户信息认证的请求,有些是订阅信息的返回数据,还有一些广告推送信息。这些信息混杂在一起,只靠脚本代码中的特征值很难分辨出哪些是需要采集的数据源。另外,对脚本代码的特征值分析也只限于JavaScript代码没有加密的情况,现在很多站点基于安全性的和访问效率的要求,可能会对多个JavaScript脚本文件进行合并然后做加密处理,这样一来会使本来存在的特征值消失。
其次,Ajax的调用方式本身会存在跨域问题,这是它自身所特有的一种安全机制。即不在同一个域名下,使用脚本语言仍然无法成功执行请求并返回数据。在处理这样的调用方式时,因为不具备统一域名下的网络环境,就难以自动完成Ajax触发请求。还有一些站点在程序中会有反爬虫的程序,如果频繁访问会出现二维码等内容阻断新闻数据的继续采集。
最后,即便是找到了Ajax请求的数据源,也会存在格式和编码方式不匹配的问题。比如JAVA语言生成的JSON数据,PHP语言就无法直接处理。有些返回数据中会带有英文双引号与JSON格式本身的符号冲突问题。还有些请求采取的是JSONP的请求方式,即附带请求头的JSON格式。
发明内容
本发明的目的就是为了解决上述问题,提供一种基于Ajax的新闻网页动态数据的抓取方法及系统,它把重点放在数据源的策略分析上,对不同的情况采取定制化的方案。
为了实现上述目的,本发明采用如下技术方案:
基于Ajax的新闻网页动态数据的抓取方法,包括如下步骤:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东舜网传媒股份有限公司,未经山东舜网传媒股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611243223.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种物联网分析方法
- 下一篇:构建乐谱库的方法和装置