CN112416324B - 基于python语言的脚本功能实现方法、终端设备及存储介质 - Google Patents
基于python语言的脚本功能实现方法、终端设备及存储介质 Download PDFInfo
- Publication number
- CN112416324B CN112416324B CN202011334265.7A CN202011334265A CN112416324B CN 112416324 B CN112416324 B CN 112416324B CN 202011334265 A CN202011334265 A CN 202011334265A CN 112416324 B CN112416324 B CN 112416324B
- Authority
- CN
- China
- Prior art keywords
- python
- field
- json
- value
- script
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000013515 script Methods 0.000 title claims abstract description 90
- 230000006870 function Effects 0.000 title claims abstract description 72
- 238000000034 method Methods 0.000 title claims abstract description 57
- 238000004458 analytical method Methods 0.000 claims abstract description 10
- 238000003491 array Methods 0.000 claims description 6
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种基于python语言的脚本功能实现方法、终端设备及可读存储介质,包括以下步骤:接收到json文件后,基于python解析规则获取所述json文件中的json数组;获取所述json数组中的shell字段;根据所述shell字段创建python线程,并通过所述python线程执行所述json数组中的command字段对应的控制指令;按预设顺序执行所述json数组中其他字段的对应的控制指令,以实现所述json文件所定义的脚本功能,所述其他字段为所述json数组中除所述shell字段之外的字段,降低了实现脚本功能的难度。
Description
技术领域
本发明涉及计算机领域,尤其涉及基于python语言的脚本功能实现方法、终端设备及可读存储介质。
背景技术
脚本(Script)是使用一种特定的描述性语言,依据一定的格式编写的可执行文件,被执行时可实现脚本所定义的脚本功能。由于脚本实际是通过编程语言编写出来的程序,其中,Python是编写脚本程序常用的编程语言,则编写脚本时需要一定的代码逻辑,对于非本领域技术人员来说难度较高。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种基于python语言的脚本功能实现方法、终端设备及可读存储介质,旨在降低实现脚本功能的难度。
为实现上述目的,本发明提供一种基于python语言的脚本功能实现方法,所述基于python语言的脚本功能实现方法包括以下步骤:
接收到json文件后,基于python解析规则获取所述json文件中的json数组;
获取所述json数组中的shell字段;
根据所述shell字段创建python线程,并通过所述python线程执行所述json数组中的command字段对应的控制指令;
按预设顺序执行所述json数组中其他字段的对应的控制指令,以实现所述json文件所定义的脚本功能,所述其他字段为所述json数组中除所述shell字段之外的字段。
可选地,所述根据所述shell字段创建python线程,并通过所述python线程执行所述json数组中的command字段对应的控制指令的步骤,还包括:
获取所述shell字段的shell值;
在所述shell值为第一预设值时,在当前运行的第一窗口创建python线程,并通过所述python线程执行所述command字段记录的控制指令;
在所述shell值为第二预设值时,获取所述command字段对应的预设脚本程序,在当前运行的第一窗口创建python线程,并通过所述python线程运行所述预设脚本程序。
可选地,其特征在于,所述获取所述shell字段的shell值的步骤之后,所述根据所述shell字段创建python线程,并通过所述python线程执行所述json数组中的command字段对应的控制指令的步骤,还包括:
在所述shell值为第三预设值时,在当前运行的第一窗口创建python线程,并通过所述python线程执行所述command字段记录的控制指令;
返回执行所述获取所述json文件中的json数组的步骤。
可选地,其特征在于,所述获取所述shell字段的shell值的步骤之后,所述根据所述shell字段创建python线程,并通过所述python线程执行所述json数组中的command字段对应的控制指令的步骤,还包括:
在所述shell值为第四预设值时,获取所述command字段对应的预设脚本程序;
在当前界面创建第二窗口,并在所述第二窗口创建python线程,并通过所述python线程运行所述预设脚本程序。
可选地,其特征在于,所述其他字段包括result字段、checktype字段、check字段以及enter字段,所述按预设顺序执行所述json数组中其他字段的对应的控制指令的步骤,还包括:
在所述result字段的result值为第五预设值时,通过所述python线程获取所述command字段对应的执行结果;
在所述checktype字段的checktype值不为第六预设值时,根据所述checktype值以及所述check字段验证所述command字段对应的执行结果。
可选地,其特征在于,所述根据所述checktype值以及所述check字段验证所述command字段对应的执行结果的步骤之后,还包括:
在所述enter字段的enter值为第七预设值时,通过python的应用程序接口接收用户输入的继续执行指令;
在接收到所述继续执行指令后,在所述json文件中获取下一个所述json数组,所述json文件中包括多个json数组;
返回执行所述获取所述json数组中的shell字段的步骤。
可选地,其特征在于,所述接收到json文件时,在所述json文件中获取json数组的步骤,还包括:
接收到json文件时,通过python的应用程序接口获取当前运行的操作系统的系统类型;
在所述系统类型为windows时,通过预设接口在所述json文件中获取json数组;
在所述系统类型为linux时,控制所述操作系统进入非规范模式,在所述json文件中获取json数组。
可选地,其特征在于,所述获取所述json数组中的shell字段的步骤之前,还包括:
获取所述json数组中的notice字段;
在所述notice字段不为空时,输出所述notice字段的字段内容。
此外,为实现上述目的,本发明还提出了一种终端设备,所述终端设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的脚本功能的实现程序,所述脚本功能的实现程序在被处理器执行时实现如上述的基于python语言的脚本功能实现方法的步骤。
此外,为实现上述目的,本发明还提出一种可读存储介质,所述可读存储介质上存储有脚本功能的实现程序,所述脚本功能的实现程序被处理器执行时实现如上所述的基于python语言的脚本功能实现方法的步骤。
本发明实施例提出的一种基于python语言的脚本功能实现方法、终端设备及可读存储介质,接收到json文件后,基于python解析规则获取所述json文件中的json数组;获取所述json数组中的shell字段;根据所述shell字段创建python线程,并通过所述python线程执行所述json数组中的command字段对应的控制指令;按预设顺序执行所述json数组中其他字段的对应的控制指令,以实现所述json文件所定义的脚本功能,所述其他字段为所述json数组中除所述shell字段之外的字段,由于json是一种基于文本且独立于开发语言的轻量级数据交换格式,相对于脚本语言来说更易于用户阅读及编写,且不需要代码逻辑,从而降低了实现脚本功能的难度。
附图说明
图1是本发明实施例方案涉及的终端设备的硬件架构示意图;
图2为本发明基于python语言的脚本功能实现方法的第一实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
脚本(Script)是使用一种特定的描述性语言,依据一定的格式编写的可执行文件,被执行时可实现脚本所定义的脚本功能。由于脚本实际是通过编程语言编写出来的程序,其中,Python是编写脚本程序常用的编程语言,则编写脚本时需要一定的代码逻辑,对于非本领域技术人员来说难度较高。
为解决上述缺陷,本发明实施例提出一种基于python语言的脚本功能实现方法、终端设备及可读存储介质,其中,所述基于python语言的脚本功能实现方法主要包括以下步骤:
接收到json文件后,基于python解析规则获取所述json文件中的json数组;
获取所述json数组中的shell字段;
根据所述shell字段创建python线程,并通过所述python线程执行所述json数组中的command字段对应的控制指令;
按预设顺序执行所述json数组中其他字段的对应的控制指令,以实现所述json文件所定义的脚本功能,所述其他字段为所述json数组中除所述shell字段之外的字段。
由于json是一种基于文本且独立于开发语言的轻量级数据交换格式,相对于脚本语言来说更易于用户阅读及编写,且不需要代码逻辑,从而降低了实现脚本功能的难度。
如图1所示,图1是本发明实施例方案涉及的终端设备的硬件架构示意图。
如图1所示,该终端设备可以包括:处理器1001,例如CPU,用户接口1003,网络接口1004,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘等,可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的终端设备的硬件架构并不构成对终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及脚本功能的实现程序。
在图1所示的终端设备中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;处理器1001可以用于调用存储器1005中存储的脚本功能的实现程序,并执行以下操作:
接收到json文件后,基于python解析规则获取所述json文件中的json数组;
获取所述json数组中的shell字段;
根据所述shell字段创建python线程,并通过所述python线程执行所述json数组中的command字段对应的控制指令;
按预设顺序执行所述json数组中其他字段的对应的控制指令,以实现所述json文件所定义的脚本功能,所述其他字段为所述json数组中除所述shell字段之外的字段。
进一步地,处理器1001可以用于调用存储器1005中存储的脚本功能的实现程序,还执行以下操作:
获取所述shell字段的shell值;
在所述shell值为第一预设值时,在当前运行的第一窗口创建python线程,并通过所述python线程执行所述command字段记录的控制指令;
在所述shell值为第二预设值时,获取所述command字段对应的预设脚本程序,在当前运行的第一窗口创建python线程,并通过所述python线程运行所述预设脚本程序。
进一步地,处理器1001可以用于调用存储器1005中存储的脚本功能的实现程序,还执行以下操作:
在所述shell值为第三预设值时,在当前运行的第一窗口创建python线程,并通过所述python线程执行所述command字段记录的控制指令;
返回执行所述获取所述json文件中的json数组的步骤。
进一步地,处理器1001可以用于调用存储器1005中存储的脚本功能的实现程序,还执行以下操作:
在所述shell值为第四预设值时,获取所述command字段对应的预设脚本程序;
在当前界面创建第二窗口,并在所述第二窗口创建python线程,并通过所述python线程运行所述预设脚本程序。
进一步地,处理器1001可以用于调用存储器1005中存储的脚本功能的实现程序,还执行以下操作:
在所述result字段的result值为第五预设值时,通过所述python线程获取所述command字段对应的执行结果;
在所述checktype字段的checktype值不为第六预设值时,根据所述checktype值以及所述check字段验证所述command字段对应的执行结果。
进一步地,处理器1001可以用于调用存储器1005中存储的脚本功能的实现程序,还执行以下操作:
在所述enter字段的enter值为第七预设值时,通过python的应用程序接口接收用户输入的继续执行指令;
在接收到所述继续执行指令后,在所述json文件中获取下一个所述json数组,所述json文件中包括多个json数组;
返回执行所述获取所述json数组中的shell字段的步骤。
进一步地,处理器1001可以用于调用存储器1005中存储的脚本功能的实现程序,还执行以下操作:
接收到json文件时,通过python的应用程序接口获取当前运行的操作系统的系统类型;
在所述系统类型为windows时,通过预设接口在所述json文件中获取json数组;
在所述系统类型为linux时,控制所述操作系统进入非规范模式,在所述json文件中获取json数组。
进一步地,处理器1001可以用于调用存储器1005中存储的脚本功能的实现程序,还执行以下操作:
获取所述json数组中的notice字段;
在所述notice字段不为空时,输出所述notice字段的字段内容。
如图2所示,图2是本发明基于python语言的脚本功能实现方法的第一实施例中,所述基于python语言的脚本功能实现方法包括以下步骤:
步骤S10、接收到json文件后,基于python解析规则获取所述json文件中的json数组;
步骤S20、获取所述json数组中的shell字段;
步骤S30、根据所述shell字段创建python线程,并通过所述python线程执行所述json数组中的command字段对应的控制指令;
步骤S40、按预设顺序执行所述json数组中其他字段的对应的控制指令,以实现所述json文件所定义的脚本功能,所述其他字段为所述json数组中除所述shell字段之外的字段。
在本实施例中,所述json文件内包括至少一个json数组;每个所述json数组按照预设数据格式编写而成,其中,所述json数组可以包括command字段、result字段、sleep字段、checktype字段、check字段、enter字段、shell字段以及notice字段;所述预设顺序为json数组中所有字段的解释执行顺序,示例性地,所述预设顺序可以是notice字段、shell字段、command字段、result字段、sleep字段、checktype字段、check字段、enter字段。
具体地,所述notice字段为提示字段;所述shell字段用于确认是否需要执行其他脚本;所述command字段为命令字段;所述result字段用于确认是否获取命令的返回值;所述sleep字段为执行命令后的等待时间;所述checktype字段为校验方式;所述check字段为校验值;所述enter字段用于确认是否需要继续执行。
所述python解析规则为python读入并解析json文件的解析规则;所述python线程是操作系统能够进行运算调度的最小单位。
处理器接收到json文件后,基于python解析规则解析json文件,并按文件顺序依次获取json文件中的一个json数组,然后获取json数组中的shell字段,并根据shell字段创建python线程,并通过python线程执行json数组中command字段对应的控制指令,然后按照预设顺序依次获取并执行json数组中的其他字段对应的控制指令,从而在json数组中所有字段执行结束时,实现该json数组对应的基本功能,进而在json文件中的所有json数组均解释执行结束时,实现json文件所定义的脚本功能。
在本实施例公开的技术方案中,由于json是一种基于文本且独立于开发语言的轻量级数据交换格式,相对于脚本语言来说更易于用户阅读及编写,且不需要代码逻辑,从而降低了实现脚本功能的难度。
可选地,基于第一实施例,在本发明基于python语言的脚本功能实现方法的第二实施例中,所述步骤S30进一步包括:
步骤S31、获取所述shell字段的shell值;
步骤S32、在所述shell值为第一预设值时,在当前运行的第一窗口创建python线程,并通过所述python线程执行所述command字段记录的控制指令;
步骤S33、在所述shell值为第二预设值时,获取所述command字段对应的预设脚本程序,在当前运行的第一窗口创建python线程,并通过所述python线程运行所述预设脚本程序。
在本实施例中,所述第一预设值为n,表示在当前运行窗口直接执行当前json数组中的command命令,对应地,所述command字段记录的是控制指令;所述第二预设值为y,表示在当前运行窗口中执行当前json数组中的command字段对应的预设脚本程序,对应地,所述command字段记录该预设脚本程序对应的脚本路径;所述预设脚本程序是通过编程语言编写出来的、能实现一定功能的、可直接使用的脚本程序,可以是专供用户调用的常规脚本程序。
处理器先获取当前json数组中的shell字段的shell值。
处理器在shell值为第一预设值时,直接在当前运行的第一窗口创建python线程,并通过python线程执行command字段中记录的控制指令。
处理器在shell值为第二预设值时,获取command字段记录预设脚本程序的脚本路径,然后根据当前运行的操作系统类型,在当前运行的第一窗口创建python线程,并通过python线程运行该预设脚本程序;具体地,在当前运行的操作系统类型为linux时,根据linux的调用命令格式以及预设脚本程序的脚本路径生成调用命令;在当前运行的操作系统类型为windows时,根据windows的调用命令格式以及预设脚本程序的脚本路径生成调用命令;然后在第一窗口执行该调用命令,以在第一窗口运行脚本路径对应的预设脚本程序。
示例性地,所述步骤S31之后,还包括:
步骤S34、在所述shell值为第三预设值时,在当前运行的第一窗口创建python线程,并通过所述python线程执行所述command字段记录的控制指令;
步骤S35、返回执行所述获取所述json文件中的json数组的步骤。
在本实施例中,所述第三预设值为脚本,表示在当前运行窗口直接执行当前json数组中的command命令之后,结束对当前json数组的解释执行,对应地,所述command字段记录的是控制指令。
处理器在shell值为第三预设值时,直接在当前运行的第一窗口创建python线程,并通过python线程执行command字段中记录的控制指令,并在该控制指令执行结束后,结束对当前json数组的解释执行过程,从而获取json文件中的下一json数组,然后执行如上述的脚本功能的实现过程。
示例性地,所述步骤S31之后,还包括:
步骤S36、在所述shell值为第四预设值时,获取所述command字段对应的预设脚本程序;
步骤S37、在当前界面创建第二窗口,并在所述第二窗口创建python线程,并通过所述python线程运行所述预设脚本程序。
在本实施例中,所述第四预设值为new,表示新建一个运行窗口,并在新建的运行窗口中执行当前json数组中的command字段对应的预设脚本程序,对应地,所述command字段记录该预设脚本程序对应的脚本路径。
处理器在shell值为第四预设值时,获取command字段记录预设脚本程序的脚本路径,然后根据当前运行的操作系统类型,在当前界面创建第二窗口,并在第二窗口创建python线程,并通过python线程运行该预设脚本程序;具体地,在当前运行的操作系统类型为linux时,根据linux的调用命令格式以及预设脚本程序的脚本路径生成调用命令;在当前运行的操作系统类型为windows时,根据windows的调用命令格式以及预设脚本程序的脚本路径生成调用命令;然后新建一个运行窗口,即第二窗口,并在第二窗口执行该调用命令,以在第二窗口运行脚本路径对应的预设脚本程序。
在本实施例公开的技术方案中,由于不同的command字段所定义的功能所需要的运行环境不同,则先确定shell值,然后根据shell值执行command字段的记录内容对应的控制指令,以实现command字段所定义的功能,提高了基于python语言的脚本功能实现方法的适用性。
可选地,基于第一实施例,在本发明基于python语言的脚本功能实现方法的第三实施例中,所述步骤S40进一步包括:
步骤S41、在所述result字段的result值为第五预设值时,通过所述python线程获取所述command字段对应的执行结果;
步骤S42、在所述checktype字段的checktype值不为第六预设值时,根据所述checktype值以及所述check字段验证所述command字段对应的执行结果。
在本实施例中,所述result值可以是y和n;当result值为y时,表示需要获取command字段执行结束后的返回值;当result值为n时,表示不需要获取command字段执行结束后的返回值;其中,所述第五预设值为y。
所述checktype值可以是-1、0、1、2、3;当checktype值为-1时,表示不需要检验command字段执行结束后的返回值;当checktype值为0时,表示检验command字段执行结束后的返回值中是否包含字符“string”,对应地,所述check字段的check值为string;当checktype值为1时,表示需要确认command字段的执行结果是否满足预期,对应地,所述check字段的check值为null;当checktype值为2时,表示检验command字段执行结束后的返回值是否在check值对应的数值范围内,对应地,所述check字段的check值为数值范围,例如[0,400];当checktype值为3时,表示检验command字段执行结束后的返回值中是否不包含字符“string”,对应地,所述check字段的check值为string;其中,所述第六预设值为-1。
处理器获取result字段的result值,并在result值为第五预设值时,获取sleep字段的sleep值,所述sleep值为时间长度,在sleep值对应的时间长度之后,通过python线程获取command字段对应的执行结果,即command字段执行结束之后的返回值,然后获取checktype字段的checktype值,在checktype值不为第六预设值时,根据checktype值以及check值对command字段执行结束后的返回值进行检验。
即当checktype值为1时,判断command字段的执行结果是否满足预期;当checktype值为2时,检验command字段执行结束后的返回值是否在check值对应的数值范围内;当checktype值为3时,检验command字段执行结束后的返回值中是否不包含字符“string”。
可选地,所述步骤S42之后,还包括:
步骤S43、在所述enter字段的enter值为第七预设值时,通过python的应用程序接口接收用户输入的继续执行指令;
步骤S44、在接收到所述继续执行指令后,在所述json文件中获取下一个所述json数组,所述json文件中包括多个json数组;
步骤S45、返回执行所述获取所述json数组中的shell字段的步骤。
在本实施例中,所述enter值可以是y和n;当enter值为y时,表示需要用户输入继续执行指令;当enter值为n时,表示不需要用户输入继续执行指令;其中,所述第七预设值为y。
处理器获取enter字段的enter值,在enter值为第七预设值时,通过python的应用程序接口接收用户输入的继续执行指令,并在接收到继续执行指令后,获取json文件中的下一个json数组,并返回执行前述对json数组进行解析执行的过程。
处理器在enter值不为第七预设值时,直接获取json文件中的下一个json数组,并返回执行前述对json数组进行解析执行的过程。
可选地,处理器在result值不为第五预设值时,或者在checktype值为第六预设值时,直接执行获取enter字段的enter值的步骤。
在本实施例公开的技术方案中,通过对command字段执行结束之后的返回值进行校验,提高了json数组的解释执行过程的准确性,避免由于command字段执行出错而导致的脚本功能无法实现的情况。
可选地,基于第一实施例,在本发明基于python语言的脚本功能实现方法的第四实施例中,所述步骤S10进一步包括:
步骤S11、接收到json文件时,通过python的应用程序接口获取当前运行的操作系统的系统类型;
步骤S12、在所述系统类型为windows时,通过预设接口在所述json文件中获取json数组;
步骤S13、在所述系统类型为linux时,控制所述操作系统进入非规范模式,在所述json文件中获取json数组。
在本实施例中,由于不同操作系统的脚本执行过程不同,则处理器在接收到json文件时,先通过python的应用程序接口获取当前运行的操作系统的系统类型,然后在系统类型为windows时,通过预设接口在json文件中获取json数组;在系统类型为linux时,根据linux系统的预设模式切换过程,控制linux系统进入非规范模式,然后再获取json文件中的json数组。
在本实施例中,通过确认当前运行的操作系统的系统类型,然后根据系统类型进行相应的预处理,再获取json文件中的json数组进行解释执行,从而避免了由于系统类型不适用而造成的解释错误,提高了脚本功能的实现过程的适用性。
可选地,基于第一实施例,在本发明基于python语言的脚本功能实现方法的第五实施例中,所述步骤S20之前,还包括:
步骤S50、获取所述json数组中的notice字段;
步骤S60、在所述notice字段不为空时,输出所述notice字段的字段内容。
在本实施例中,处理器在获取json文件中的json数组后,先获取json数组中的notice字段,然后验证notice字段是否为空,并在notice字段不为空时,输出notice字段的字段内容。
在本实施例公开的技术方案中,通过输出notice字段来提示用户,在用户不熟悉时达到提示运行的作用,提高了脚本功能的实现过程的适用性。
示例性地,实现所述基于python语言的脚本功能实现方法的脚本功能的实现程序,可以是通过python编程语言进行编写得到的脚本程序。
处理器在当前界面创建第二窗口之前,还需要先获取python的线程创建指令,并执行该线程创建指令。
处理器在接收到json文件时,获取当前运行的操作系统的系统类型,然后在系统类型为windows时,通过python的OS接口在json文件中获取json数据,其中,所述OS接口是python对windows系统进行调用的接口。
处理器在系统类型为linux时,获取linux系统标准输入的文件描述符,然后通过文件描述符获取标准输入的设置信息,在所述设置信息中的预设索引值对应的模式是本地模式时,将该索引值对应的模式修改为非规范模式,然后根据设置信息进行配置,以使修改后的设置信息生效,使得linux系统进入非规范模式,然后在json文件中获取json数组;可选地,还可以控制显示界面不显示输入信息。
此外,本发明实施例还提出一种终端设备,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的脚本功能的实现程序,所述脚本功能的实现程序被所述处理器执行时实现如上各个实施例所述的基于python语言的脚本功能实现方法的步骤。
此外,本发明实施例还提出一种可读存储介质,所述可读存储介质上存储有脚本功能的实现程序,所述脚本功能的实现程序被处理器执行时实现如上各个实施例所述的基于python语言的脚本功能实现方法的步骤。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是PC机等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (7)
1.一种基于python语言的脚本功能实现方法,其特征在于,所述基于python语言的脚本功能实现方法包括以下步骤:
接收到json文件后,基于python解析规则获取所述json文件中的json数组;
获取所述json数组中的shell字段;
在所述shell值为第一预设值时,在当前运行的第一窗口创建python线程,并通过所述python线程执行所述json数组中的command字段记录的控制指令;
在所述shell值为第二预设值时,获取所述command字段对应的预设脚本程序,在当前运行的第一窗口创建python线程,并通过所述python线程运行所述预设脚本程序;
在所述shell值为第三预设值时,在当前运行的第一窗口创建python线程,并通过所述python线程执行所述command字段记录的控制指令;返回执行所述获取所述json文件中的json数组的步骤;
在所述shell值为第四预设值时,获取所述command字段对应的预设脚本程序;在当前界面创建第二窗口,并在所述第二窗口创建python线程,并通过所述python线程运行所述预设脚本程序;
按预设顺序执行所述json数组中其他字段的对应的控制指令,以实现所述json文件所定义的脚本功能,所述其他字段包括result字段、checktype字段、check字段以及enter字段。
2.如权利要求1所述的基于python语言的脚本功能实现方法,其特征在于,所述按预设顺序执行所述json数组中其他字段的对应的控制指令的步骤,还包括:
在所述result字段的result值为第五预设值时,通过所述python线程获取所述command字段对应的执行结果;
在所述checktype字段的checktype值不为第六预设值时,根据所述checktype值以及所述check字段验证所述command字段对应的执行结果。
3.如权利要求2所述的基于python语言的脚本功能实现方法,其特征在于,所述根据所述checktype值以及所述check字段验证所述command字段对应的执行结果的步骤之后,还包括:
在所述enter字段的enter值为第七预设值时,通过python的应用程序接口接收用户输入的继续执行指令;
在接收到所述继续执行指令后,在所述json文件中获取下一个所述json数组,所述json文件中包括多个json数组;
返回执行所述获取所述json数组中的shell字段的步骤。
4.如权利要求1所述的基于python语言的脚本功能实现方法,其特征在于,所述接收到json文件时,在所述json文件中获取json数组的步骤,还包括:
接收到json文件时,通过python的应用程序接口获取当前运行的操作系统的系统类型;
在所述系统类型为windows时,通过预设接口在所述json文件中获取json数组;
在所述系统类型为linux时,控制所述操作系统进入非规范模式,在所述json文件中获取json数组。
5.如权利要求1所述的基于python语言的脚本功能实现方法,其特征在于,所述获取所述json数组中的shell字段的步骤之前,还包括:
获取所述json数组中的notice字段;
在所述notice字段不为空时,输出所述notice字段的字段内容。
6.一种终端设备,其特征在于,所述终端设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的脚本功能的实现程序,所述脚本功能的实现程序被所述处理器执行时实现如权利要求1至5中任一项所述的基于python语言的脚本功能实现方法的步骤。
7.一种可读存储介质,其特征在于,所述可读存储介质上存储有脚本功能的实现程序,所述脚本功能的实现程序被处理器执行时实现如权利要求1至5中任一项所述的基于python语言的脚本功能实现方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011334265.7A CN112416324B (zh) | 2020-11-24 | 2020-11-24 | 基于python语言的脚本功能实现方法、终端设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011334265.7A CN112416324B (zh) | 2020-11-24 | 2020-11-24 | 基于python语言的脚本功能实现方法、终端设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112416324A CN112416324A (zh) | 2021-02-26 |
CN112416324B true CN112416324B (zh) | 2024-02-09 |
Family
ID=74842021
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011334265.7A Active CN112416324B (zh) | 2020-11-24 | 2020-11-24 | 基于python语言的脚本功能实现方法、终端设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112416324B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104834510A (zh) * | 2014-12-19 | 2015-08-12 | 北汽福田汽车股份有限公司 | Can协议代码源文件的生成方法和装置 |
CN108197019A (zh) * | 2017-12-20 | 2018-06-22 | 大唐微电子技术有限公司 | 智能卡的测试系统、测试设备、测试方法 |
CN108763042A (zh) * | 2018-05-24 | 2018-11-06 | 广东睿江云计算股份有限公司 | 一种基于python的云服务器性能数据采集方法及装置 |
CN109325351A (zh) * | 2018-08-23 | 2019-02-12 | 中通服咨询设计研究院有限公司 | 一种基于众测平台的安全漏洞自动化验证系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9170782B2 (en) * | 2012-03-27 | 2015-10-27 | Microsoft Technology Licensing, Llc | Extensible mechanism for providing suggestions in a source code editor |
-
2020
- 2020-11-24 CN CN202011334265.7A patent/CN112416324B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104834510A (zh) * | 2014-12-19 | 2015-08-12 | 北汽福田汽车股份有限公司 | Can协议代码源文件的生成方法和装置 |
CN108197019A (zh) * | 2017-12-20 | 2018-06-22 | 大唐微电子技术有限公司 | 智能卡的测试系统、测试设备、测试方法 |
CN108763042A (zh) * | 2018-05-24 | 2018-11-06 | 广东睿江云计算股份有限公司 | 一种基于python的云服务器性能数据采集方法及装置 |
CN109325351A (zh) * | 2018-08-23 | 2019-02-12 | 中通服咨询设计研究院有限公司 | 一种基于众测平台的安全漏洞自动化验证系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112416324A (zh) | 2021-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220108108A1 (en) | Method and system for extraction of data from documents for robotic process automation | |
US8504803B2 (en) | System and method for creating and executing portable software | |
AU2018241159B2 (en) | Contextual solicitation in a starter application | |
CN110825431B (zh) | 接口文档处理方法及装置、系统、存储介质和电子设备 | |
US20200133645A1 (en) | User interface and front end application automatic generation | |
US11782734B2 (en) | Method and system for text extraction from an application window for robotic process automation | |
US11615018B2 (en) | Automation testing tool framework | |
US20220032457A1 (en) | Robotic Process Automation with Resilient Playback of Recordings | |
CN109614325B (zh) | 一种确定控件属性的方法及装置、电子设备和存储介质 | |
CN111813409A (zh) | 一种交互界面的代码生成方法、装置、设备及存储介质 | |
CN114089986A (zh) | 低代码开发平台函数表达式配置方法、系统、设备及介质 | |
CN108536584B (zh) | 一种基于Sikuli的自动化测试方法 | |
CN108418797A (zh) | 网页访问方法、装置、计算机设备和存储介质 | |
US20210026756A1 (en) | Deriving software application dependency trees for white-box testing | |
CN112416324B (zh) | 基于python语言的脚本功能实现方法、终端设备及存储介质 | |
CN117493199A (zh) | 代码校验方法、装置、计算机设备和存储介质 | |
CN109815127B (zh) | 自动化脚本转换方法、装置、计算机设备和存储介质 | |
CN115809200A (zh) | 基于python的UI自动化用例调用方法及装置 | |
CN114063982A (zh) | 一种基于多场景应用的自动构建功能组件的方法 | |
Kimmel et al. | Excel 2003 VBA Programmer's Reference | |
CN114201149B (zh) | 运行流程生成方法、装置、系统与计算机可读存储介质 | |
CN108897605B (zh) | 一种桌面应用程序嵌入网页的方法及装置 | |
Qasim | Shortening testing time of a web-based business application in scrum using automated testing | |
CN113934414A (zh) | 基于Vue.js的移动端组件库的应用方法、装置及移动端组件库 | |
Adamenko et al. | Development of a System for Static Analysis of C++ Language Code |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20221125 Address after: 266104 No. 500, Songling Road, Laoshan District, Qingdao, Shandong Applicant after: GOERTEK TECHNOLOGY Co.,Ltd. Address before: 261031 east of Dongming Road, north of Yuqing East Street, high tech Zone, Weifang City, Shandong Province (Room 502, Geer electronics office building) Applicant before: GoerTek Optical Technology Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |