[发明专利]一种用JavaFX进行代码样例自动填充的方法和工具有效
申请号: | 202010738427.7 | 申请日: | 2020-07-28 |
公开(公告)号: | CN111813443B | 公开(公告)日: | 2023-07-18 |
发明(设计)人: | 周鑫;张贺;刘名锴;荣国平;邵栋 | 申请(专利权)人: | 南京大学 |
主分类号: | G06F8/72 | 分类号: | G06F8/72;G06F16/93;G06F16/951;G06F16/955;G06F40/194 |
代理公司: | 北京华际知识产权代理有限公司 11676 | 代理人: | 陶小丽 |
地址: | 210093 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 javafx 进行 代码 自动 填充 方法 工具 | ||
1.一种用JavaFX进行代码样例自动填充的方法,其特征在于,包括以下步骤:
S1:访问不同的统一资源标识符,并且定位HTML文档中的元素,再爬取定位到元素中的文本内容,获取问题信息和应用程序接口信息;
S2:通过爬虫访问问题详细信息页面,提取使用场景,建立应用程序接口类型、使用场景和代码样例的映射,并将原始数据加工为符合文档要求的数据;
S3:使用程序操作文档对象,通过代码逻辑预定义好文档模板和数据的组合形式,最后取出存储的数据嵌入文档,并保存生成最终的应用程序接口文档;
S2中提取使用场景、建立映射和加工数据的具体步骤如下:
S2-1:使用XPath定位到问题详细信息界面中的问题标题、问题体和答案部分,每一个问题和答案视为一个问答对;
S2-2:通过关键词识别技术,分析答案的代码片段、问题标题和问题体的代码片段中是否包含某一应用程序接口名称,建立问答对与应用程序接口名称之间的映射关系;
S2-3:对于普通问答对,直接将问题标题作为使用场景;对于故障修复型问答对,去除问题标题中的故障关键词和其后介词,将剩余标题内容作为使用场景;建立起应用程序接口、使用场景和问答对的映射关系,并存入数据库;
S2-4:对于普通问答对,直接爬取答案中的代码片段并组合为一段完整代码,保存为本地文件;对于故障修复型问答对,分别获取问题体和答案中的代码段,通过文本相似度计算和字符替换,将所得产物保存为本地文件;
生成应用程序接口文档的具体步骤如下:
S3-1:根据文档所需内容预定义文档模板,根据处理数据的需求预定义数据的组合形式;
S3-2:对于每一个应用程序接口场景建立一个word文档对象,并根据API、使用场景和代码样例的映射关系,找到与这个应用程序接口对应的所有样例代码地址,然后将应用程序接口名称、使用场景和代码地址存入元组,元组放入列表中;
S3-3:对于每一个应用程序接口,取出所有元组中所有对应的样例代码样例地址,通过地址读取样例代码文件,将应用程序接口名称、使用场景和样例代码按照预定义的文档模板存入文档对象,最后保存API文档。
2.根据权利要求1所述的用JavaFX进行代码样例自动填充的方法,其特征在于,访问到不同的统一资源标识符和爬取文档元素内容的具体步骤包括:
S1-1:选择数据源,将某一具体技术对应映射设置一个标签,获取显示标签所对应具体技术的问题的网页的所有统一资源标识符;
S1-2:使用通过统一资源标识符爬虫访问到步骤S1-1中选取的数据源上显示标签带有该具体技术的问题的所有网页中,并获取所有网页页码中的最大值;
S1-3:将所有网页页码中的最大值作为拼接输入参数,通过拼接起来的统一资源标识符访问到每一页问题列表界面;
S1-4:通过XPath语言定位到所需信息所在的页面元素,所述页面元素包括问题ID、问题标题、回答数、投票数和问题详细信息界面超链接,然后使用爬虫把所述页面元素标签中的文本内容爬取下来;
S1-5:设置投票数和回答数为过滤条件,只将投票数和回答数大于1的问题信息存入数据库;
S1-6:爬虫通过统一资源标识符访问到某一技术原生应用程序接口文档;
S1-7:通过XPath定位到内联框架里列表所包含的每一个列表项元素,爬取标签中的文本内容并存入数据库,获取所有的应用程序接口类型。
3.根据权利要求1所述的用JavaFX进行代码样例自动填充的方法,其特征在于,在S2提取使用场景、建立映射和加工数据之前,还包括以下步骤:
取出数据库中存放的所有应用程序接口名称和问题信息包含的统一资源标识符,并将选取的数据源的域名作为前缀与所述统一资源标识符进行拼接,将应用程序接口名称和拼接后的结果分别存入列表;
遍历统一资源标识符列表,爬虫通过每个不同的统一资源标识符访问不同的问题详细信息页面,每一对问题和答案视作一个问答对;
进行关键词识别,判断问题标题中是否含有“failure”、“error”、“exception”和“issue”字段,如果有则将该问题标题对应的问题和答案视为故障修复型问答对,没有则视为普通问答对。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学,未经南京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010738427.7/1.html,转载请声明来源钻瓜专利网。