[发明专利]一种服务接口原语定义方法和系统有效

专利信息
申请号: 202010753677.8 申请日: 2020-07-30
公开(公告)号: CN111913739B 公开(公告)日: 2023-09-12
发明(设计)人: 易超;张舒汇;贺赞贤 申请(专利权)人: 北京数立得科技有限公司
主分类号: G06F8/74 分类号: G06F8/74
代理公司: 北京润泽恒知识产权代理有限公司 11319 代理人: 莎日娜
地址: 100085 北京市海淀区*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 服务 接口 定义 方法 系统
【权利要求书】:

1.一种服务接口原语定义方法,其特征在于,包括:

根据待提取数据的Web页面的特征,按照模板原语编写数据提取模板;

对所述数据提取模板进行词法分析,获得词法单元;

根据所述词法单元,对所述数据提取模板进行语法分析,获得抽象语法树;

根据所述抽象语法树,生成所述数据提取模板的以中间形式表示的XML文件;

根据所述模板原语对所述XML文件进行语义检查,完成所述数据提取模板的定义;

其中,所述模板原语是通过如下步骤定义的:

步骤1:获取一个模板入口标志语句,记为Template,表示JSON结构的根节点;

步骤2:获取一个表示JSON节点的标记,记为Output,表示在当前位置有一个JSON节点;

步骤3:获取一个表示JSON节点的key来自于HTML中对应位置的标记,记为NameNode;

步骤4:获取表示JSON节点的value的标记,所述JSON节点的value可以是对象、数组或值,分别用ObjectNode,DOMNodeList,DOMNode表示,其中,DOMNode指明该值来自HTML中的位置,所述ObjectNode表示所述JSON节点的value是一个JSON对象,所述DOMNodeList表示所述JSON节点的value是一个JSON数组,所述DOMNode表示所述JSON节点的value是一个JSON值;

步骤5:获取一个表示类的定义的语句,记为Class,所述类的定义在模板入口语句外,在模板定义之前;

步骤6:标记有属性列表,以记录JSON节点的key、value来自HTML中的xpath路径,以及可能的xpath路径优先级信息;

步骤7:用add语句表示在父节点下加入当前节点;

步骤8:用set语句表示修改当前节点的属性值;

步骤9:在存在嵌套结构的情况下,即所述JSON节点的value是对象或者列表,在相应的ObjectNode或DOMNodeList下面添加Output标记表示下一层的JSON节点。

2.根据权利要求1所述的方法,其特征在于,根据待提取数据的Web页面的特征,按照模板原语编写数据提取模板,包括:

通过Template语句定义数据提取模板的JSON根节点;

通过add Output语句在所述JSON根节点下添加JSON节点;

通过add语句在Output下添加NameNode、ObjectNode、DOMNodeList以及DOMNode标记,以指定所述JSON节点的key值和value值;

通过set或add语句为所述标记赋予属性值,以确定对应的值所在的位置和优先顺序,其中,在所述JSON节点的value值是对象或列表时,在相应的ObjectNode或DOMNodeList下添加Output标记以表示下一层的JSON节点。

3.根据权利要求2所述的方法,其特征在于,对所述数据提取模板进行词法分析,获得词法单元,包括:

获得所述数据提取模板的源程序的输入字符;

识别所述输入字符中的词素,所述词素包括:关键字、类名、模板名、属性值、表示语句结构的符号以及表示层级关系的符号;

逐个匹配所述词素的正则表达式,在匹配成功时获得相应的词法单元。

4.根据权利要求3所述的方法,其特征在于,根据所述词法单元,对所述数据提取模板进行语法分析,获得抽象语法树,包括:

逐个分析所述词法单元;

在出现某一个产生式体时,将其规约为产生式头,并与此同时构建抽象语法树的一个节点,表示当次推导所使用的产生式;

重复规约过程直到整个串被规约成开始符号,以构建所述抽象语法树,所述开始符号对应所述JSON根节点。

5.根据权利要求4所述的方法,其特征在于,根据所述抽象语法树,生成所述数据提取模板的以中间形式表示的XML文件,包括:

在构建所述抽象语法树的节点时,按照规约语句的类型生成必要XML节点或者修改XML节点的属性值;

在最终规约到开始符号时构建XML文件的JSON根节点,以生成所述数据提取模板的XML文件。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京数立得科技有限公司,未经北京数立得科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202010753677.8/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top