[发明专利]基于Ajax的新闻网页动态数据的抓取方法及系统有效
申请号: | 201611243223.6 | 申请日: | 2016-12-29 |
公开(公告)号: | CN106649810B | 公开(公告)日: | 2019-05-28 |
发明(设计)人: | 张子扬;韩强;梁成福;李广庆;李滨 | 申请(专利权)人: | 山东舜网传媒股份有限公司 |
主分类号: | G06F16/951 | 分类号: | G06F16/951;G06F16/953;G06F16/958 |
代理公司: | 济南圣达知识产权代理有限公司 37221 | 代理人: | 黄海丽 |
地址: | 250000 山东省济南市*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 ajax 新闻 网页 动态 数据 抓取 方法 系统 | ||
1.基于Ajax的新闻网页动态数据的抓取方法,其特征是,包括如下步骤:
步骤(101):建立新闻网页爬取内容数据库,设置新闻网页爬取内容数据库的编码方式;获得待抓取新闻网页的新闻列表页面的URL地址;
步骤(102):访问待抓取新闻网页的新闻列表页面的URL地址,通过浏览器开发者工具判断新闻列表页面是否是通过Ajax动态加载数据的;如果是,通过浏览器开发者工具找到Ajax请求的数据源;如果不是,就结束;
步骤(103):判断Ajax请求的数据源和步骤(101)的编码方式是否一致,如果不一致,则对数据源进行编码转换,将编码方式统一,统一采用UTF-8的编码方式,然后,进入步骤(104);如果一致,就直接进入步骤(104);
步骤(104):解析数据格式:将数据源的格式解析成为新闻列表页面的后台语言处理的对象格式或者数组格式;
步骤(105):将步骤(104)解析后的数据封装成对象或数组类型;判断封装是否成功,若成功就直接进入步骤(106);否则将数据作为字符串来处理;完成后进入步骤(106);
步骤(106):将数据对象或数组类型遍历输出列表;
步骤(107):利用网络爬虫采集步骤(106)得到的输出列表;
步骤(108):将采集到的数据存储到数据库中。
2.如权利要求1所述的基于Ajax的新闻网页动态数据的抓取方法,其特征是,
所述步骤(101)URL地址包括临时存在的URL地址、跳转地址、需要添加时间戳参数或者签名参数后访问到的URL地址;
所述步骤(101)的新闻网页爬取内容数据库的字段包括:新闻标题、新闻发布时间、新闻爬取时间、新闻来源和新闻内容;
所述步骤(101)的新闻网页爬取内容数据库的编码方式包括:UTF-8的编码方式。
3.如权利要求1所述的基于Ajax的新闻网页动态数据的抓取方法,其特征是,所述步骤(102)的浏览器开发者工具包括:谷歌浏览器开发者工具。
4.如权利要求1所述的基于Ajax的新闻网页动态数据的抓取方法,其特征是,所述步骤(103)如果Ajax请求的数据源存在特殊字符或者乱码,则把特殊字符或者乱码进行批量替换,转换成为可以进行处理的字符。
5.如权利要求1所述的基于Ajax的新闻网页动态数据的抓取方法,其特征是,所述步骤(102)和步骤(103)之间设有步骤如下:
步骤(1020):如果Ajax请求是跨域请求,则通过PHP的CURL方式模拟来路页面,并通过host来获取请求数据地址;
步骤(1021):如果Ajax请求是POST请求,使用PHP语言http_build_query函数来模拟HTTP的POST请求,以便获取到POST请求返回的数据;
步骤(1022):如果无法获取数据内容,则通过PHP的CURL来伪造来路页面对Ajax请求的数据源进行访问;
所述步骤(1020)通过PHP函数修改Referer来模拟在一个域名下进行请求,可以获得请求数据地址返回来的结果,从而解决了跨域请求没有权限获取数据的问题。
6.如权利要求1所述的基于Ajax的新闻网页动态数据的抓取方法,其特征是,
所述步骤(104)的步骤如下:
步骤(1041):如果数据是JSON格式,则直接进入步骤(105);
步骤(1042):如果数据是JSONP格式,则进行过滤处理;所述过滤处理是将JSONP格式数据的请求头及括弧剔除,然后进入步骤(105);
步骤(1043):如果返回的内容中出现中英文单双引号使用不规范的问题,则通过PHP语言的字符替换函数进行过滤,将特殊字符替换为空字符。
7.如权利要求1所述的基于Ajax的新闻网页动态数据的抓取方法,其特征是,
所述步骤(105):
如果步骤(104)解析后的数据不是键值对类型,则将步骤(104)解析后的数据封装成为数据对象,
如果步骤(104)解析后的数据是键值对类型,则将步骤(104)解析后的数据转换成为数组类型。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东舜网传媒股份有限公司,未经山东舜网传媒股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611243223.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种物联网分析方法
- 下一篇:构建乐谱库的方法和装置