[发明专利]URL提取方法及装置有效
申请号: | 202110258227.6 | 申请日: | 2021-03-10 |
公开(公告)号: | CN112632423B | 公开(公告)日: | 2021-06-29 |
发明(设计)人: | 徐国爱;徐国胜;齐向东;纪胜龙;王少杰;王晨宇;张洪盈;毛庆梅 | 申请(专利权)人: | 北京邮电大学;奇安信科技集团股份有限公司 |
主分类号: | G06F16/955 | 分类号: | G06F16/955 |
代理公司: | 北京风雅颂专利代理有限公司 11403 | 代理人: | 郑颖颖 |
地址: | 100876 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | url 提取 方法 装置 | ||
1.一种URL提取方法,其特征在于,包括:
获取源代码文件;
基于源代码文件构建抽象语法树;
遍历所述抽象语法树,获取Web-API;
根据Web-API,确定目标参数;
再次遍历所述抽象语法树,判断目标参数是否存在于源代码文件中;
若是,进行第一处理,得到URL;若否,进行第二处理,得到URL;
其中,所述根据Web-API,确定目标参数具体包括:根据Web-API调用模块的信息,解析Web-API依赖的节点,得到调用方法所依赖的对象及其参数,即得目标参数;
所述第一处理包括:根据目标参数的赋值类型,进行对应的提取处理;其中,所述目标参数的赋值类型包括常量赋值、函数赋值和用户输入;在所述第一处理中:当目标参数为常量赋值时,进行第一提取处理:直接提取目标参数对应的常量字符串;当目标参数为用户输入时,进行第二提取处理:设定用户输入,提取设定用户输入对应的常量字符串;当目标参数为函数赋值时,进行第三提取处理;所述第三提取处理包括:跟踪目标参数依赖的构造函数对应的参数的赋值和方法调用构造,解析目标参数的值,获得常量字符串;按照构造函数执行所得常量字符串,得到完整常量字符串;
所述第二处理包括:根据源代码文件引入的外部资源文件的类型,进行对应的提取处理;所述第二处理具体包括:当外部资源文件的类型为源代码型时,循环基于源代码文件构建抽象语法树至得到URL的步骤;当外部资源文件的类型为非源代码型时,搜索目标参数的值,得到常量字符串。
2.根据权利要求1所述的URL提取方法,其特征在于,跟踪目标参数依赖的构造函数对应的参数的赋值和方法调用构造,解析目标参数的值,获得常量字符串具体包括:
判断目标参数依赖的构造函数对应的参数的赋值类型;
当参数为常量赋值时,进行所述第一提取处理;当参数为用户输入时,进行所述第二提取处理;当参数为函数输入时,进行所述第三提取处理。
3.根据权利要求1所述的URL提取方法,其特征在于,还包括,存储URL至文件中,并输出URL及URL所在的文件路径。
4.一种URL提取装置,其特征在于,包括:
源代码文件获取模块,用于获取源代码文件;
抽象语法树构建模块,用于基于源代码文件构建抽象语法树;
Web-API获取模块,用于遍历所述抽象语法树,获取Web-API;
目标参数确定模块,用于根据Web-API,确定目标参数;
目标参数位置判断模块,用于再次遍历所述抽象语法树,判断目标参数是否存在于源代码文件中;
处理模块,用于若目标参数存在于源代码文件中为是,进行第一处理,得到URL;若目标参数存在于源代码文件中为否,进行第二处理,得到URL;
其中,所述根据Web-API,确定目标参数具体包括:根据Web-API调用模块的信息,解析Web-API依赖的节点,得到调用方法所依赖的对象及其参数,即得目标参数;
所述第一处理包括:根据目标参数的赋值类型,进行对应的提取处理;其中,所述目标参数的赋值类型包括常量赋值、函数赋值和用户输入;在所述第一处理中:当目标参数为常量赋值时,进行第一提取处理:直接提取目标参数对应的常量字符串;当目标参数为用户输入时,进行第二提取处理:设定用户输入,提取设定用户输入对应的常量字符串;当目标参数为函数赋值时,进行第三提取处理;所述第三提取处理包括:跟踪目标参数依赖的构造函数对应的参数的赋值和方法调用构造,解析目标参数的值,获得常量字符串;按照构造函数执行所得常量字符串,得到完整常量字符串;
所述第二处理包括:根据源代码文件引入的外部资源文件的类型,进行对应的提取处理;所述第二处理具体包括:当外部资源文件的类型为源代码型时,循环基于源代码文件构建抽象语法树至得到URL的步骤;当外部资源文件的类型为非源代码型时,搜索目标参数的值,得到常量字符串。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京邮电大学;奇安信科技集团股份有限公司,未经北京邮电大学;奇安信科技集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110258227.6/1.html,转载请声明来源钻瓜专利网。