【技术实现步骤摘要】
Python第三方包处理方法、装置、存储介质及设备
[0001]本申请涉及计算机
,具体而言,涉及一种Python第三方包处理方法、装置、存储介质及设备。
技术介绍
[0002]Python是一种面向对象、直译式编程语言,其以简洁的语法、丰富的社区以及强大的跨平台特性得到了工业界和学术界的一致认可。在进行Python开发时,经常需要引用第三方包。然而,由于第三方包和其包含的模块的名称有可能不同,用户在拿到一个第三方包时,如果其中导入了其他模块,用户往往需要猜测、安装可能的包,导致开发效率低下。
技术实现思路
[0003]本申请实施例的目的在于提供一种Python第三方包处理方法、装置、存储介质及设备,以解决相关技术中存在的用户因难以准确识别一个包中依赖的模块对应的第三方包名,导致开发效率低下的问题。
[0004]第一方面,本申请实施例提供的一种Python第三方包处理方法,包括:
[0005]检测待分析包内是否包含基础信息文件夹;
[0006]若所述待分析包内包含基础信息文件夹, ...
【技术保护点】
【技术特征摘要】
1.一种Python第三方包处理方法,其特征在于,包括:检测待分析包内是否包含基础信息文件夹;若所述待分析包内包含基础信息文件夹,通过读取所述基础信息文件夹中的指定文件,获取所述待分析包对应的模块名;若所述待分析包内不包含基础信息文件夹,获取包配置参数,根据所述包配置参数获取所述待分析包对应的模块名;记录所述待分析包的包名和模块名之间的对应关系。2.根据权利要求1所述的方法,其特征在于,所述获取包配置参数,包括:通过抽象语法树获取包配置参数;所述抽象语法树的每个节点表示所述待分析包的源代码中的一种结构;所述包配置参数对应所述抽象语法树的其中一个节点。3.根据权利要求2所述的方法,其特征在于,所述抽象语法树基于以下方式获得:对所述待分析包进行解压,从解压内容中获取所述待分析包的源代码;通过AST模块,将所述源代码转换成抽象语法树。4.根据权利要求1所述的方法,其特征在于,所述检测待分析包内是否包含基础信息文件夹,包括:检测所述待分析包的打包格式;若所述待分析包的打包格式是Wheel格式,确定所述待分析包内包含基础信息文件夹。5.根据权利要求4所述的方法,其特征在于,若所述待分析包的打包格式是Tar格式,根据所述待分析包内包含的所有文件夹名称对所述待分析包内是否包含基础信息文件夹进行检测。6.根据权利要求5所述的方法,其特征在于,所述待分析包内包含的所有文件夹名称是通过os.listdir函数获取得到的。7.根据权利要求5所述的方法,其特征在于,所述检测待分析包内是否包含基础信息文件夹,包括:获取所述待分析包内包含的所有文件夹名称;若所述所有文件夹名称中包含扩展名为di...
【专利技术属性】
技术研发人员:胡霄,应凌云,
申请(专利权)人:奇安信科技集团股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。