首页> 中国专利> 基于Python的应用软件格式转换实现方法及装置

基于Python的应用软件格式转换实现方法及装置

摘要

本发明提供了一种基于Python的工业应用软件批量格式转换方法及装置。所述方法包括:创建待转换文件的列表;通过os.starfile命令打开待转换文件;接收用户输入的热键命令;确定热键命令对应转换的目标格式;将待转换文件的列表中的文件的格式转换为目标格式的目标文件。本方案遵循框架的基本原则,将业务逻辑与脚本相匹配,可以随时根据需求进行变更,可较大降低对人员编码水平的要求,从而提供一种框架来适应不同程序的多种格式转换。实现方法相对简单,过程清晰,转换频率高,代码结构明朗,易于调整。

著录项

  • 公开/公告号CN112464621A

    专利类型发明专利

  • 公开/公告日2021-03-09

    原文格式PDF

  • 申请/专利权人 北京航星机器制造有限公司;

    申请/专利号CN202011378692.5

  • 发明设计人 陈炎;田顺吉;杨卫国;

    申请日2020-11-30

  • 分类号G06F40/151(20200101);

  • 代理机构11009 中国航天科技专利中心;

  • 代理人陈鹏

  • 地址 100013 北京市东城区和平里东街1号

  • 入库时间 2023-06-19 10:08:35

说明书

技术领域

本发明涉及软件领域,特别是一种基于Python的应用软件格式转换实现方法及装置。

背景技术

工业应用软件经常会遇到各种情况,需要将各种工业应用软件文件进行多种格式转换的情况。比如一些小众软件CAXA电子图板-工艺版的cxp工艺文件需要转换为pdf文件,三维软件UG的prt图纸文件需要转换为dwg文件,三维软件Solid Edge的dft图纸文件需要转换为dwg、pdf文件或者直接打印。

现在市面上有很多针对常见工业应用软件的批量转换程序,功能单一,比如,仅支持批量打印,再比如,批量转换软件仅针对某种常用软件UG,而如CAXA电子图板-工艺版的cxp工艺文件没有批量转换或打印的程序。另外,这些通用程序的下载存在使电脑感染病毒的风险。总之,没有一个方法可以完全吻合去适用多种类型程序和文件转换目标。因此需要自己开发一种灵活的方法框架来适应不同程序的多种格式转换。

发明内容

本发明解决的技术问题是:克服现有技术的不足,提供了一种基于Python的应用软件格式转换实现方法及装置。

为了解决上述技术问题,本发明提供了一种基于Python的应用软件格式转换实现方法包括:

创建待转换文件的列表;

通过os.starfile命令打开所述待转换文件;

接收用户输入的热键命令;

确定热键命令对应转换的目标格式;

将所述待转换文件的列表中的文件的格式转换为目标格式的目标文件。

可选地,在所述接收用户输入的热键命令的步骤之前,所述方法还包括:

构建大于或者等于Python2.7的语言环境;

编写Python脚本;

所述构建待转换文件的列表的步骤,包括:

创建Python列表,其中,所述Python列表中包含有多个待转换文件。

可选地,在所述创建待转换文件的列表的步骤之后,所述方法还包括:

创建若干个get_window函数;

通过调用get_window函数判定软件中窗口是否开启。

可选地,所述将所述待转换文件的列表中的文件的格式转换为目标格式的目标文件的步骤,包括:

通过循环调用所述待转换文件列表的文件名,将待转换文件的格式进行批量转换。

可选地,所述待转换文件的格式为工业应用软件格式。

可选地,在所述创建待转换文件的列表的步骤之后,所述方法还包括:

将热键命令对应的目标格式的对应关系预设在软件中,其中,不同热键命令对应不同的目标格式。

为了解决上述技术问题,本发明还提供了一种基于Python的应用软件格式转换实现装置,所述装置包括:

第一创建模块,用于创建待转换文件的列表;

开启模块,用于通过os.starfile命令打开所述待转换文件;

接收模块,用于接收用户输入的热键命令;

确定模块,用于确定热键命令对应转换的目标格式;

转换模块,用于将所述待转换文件的列表中的文件的格式转换为目标格式的目标文件。

可选地,所述装置还包括:

构建模块,用于在所述接收模块接收用户输入的热键命令之前,构建大于或者等于Python2.7的语言环境;

编写模块,用于编写Python脚本;

所述构建模块具体用于:

创建Python列表,其中,所述Python列表中包含有多个待转换文件。

可选地,所述装置还包括:

第二创建模块,用于在所述第一创建模块创建待转换文件的列表之后,创建若干个get_window函数;

判断模块,用于通过调用get_window函数判定软件中窗口是否开启。

可选地,所述转换模块具体用于:

通过循环调用所述待转换文件列表的文件名,将待转换文件的格式进行批量转换。

可选地,所述待转换文件的格式为工业应用软件格式。

可选地,所述装置还包括:

预设模块,用于在所述第一创建模块创建待转换文件的列表之后,将热键命令对应的目标格式的对应关系预设在软件中,其中,不同热键命令对应不同的目标格式。

本发明与现有技术相比的优点在于:

本发明实施例提供的方案,创建待转换文件的列表;通过os.starfile命令打开待转换文件;接收用户输入的热键命令;确定热键命令对应转换的目标格式;将待转换文件的列表中的文件的格式转换为目标格式的目标文件。本方案遵循框架的基本原则,将业务逻辑与脚本相匹配,可以随时根据需求进行变更,可较大降低对人员编码水平的要求,从而提供一种框架来适应不同程序的多种格式转换。实现方法相对简单,过程清晰,转换频率高,代码结构明朗,易于调整。

附图说明

图1为本发明实施例提供的一种基于Python的应用软件格式转换实现方法的步骤流程图;

图2是本发明实施例一种基于Python的应用软件格式转换实现装置的结构框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

参照图1,示出了本发明实施例提供的一种基于Python的应用软件格式转换实现方法的步骤流程图,如图1所示,该方法具体可以包括如下步骤:

步骤110:创建待转换文件的列表。

Python是一种面向对象、解释型计算机程序设计语言,有Guido Van Rossum于1989年底发明,第一个公开发行版发行于1991年,Python语法简洁而清晰,具有丰富和强大的类库。

列表中的文件名为多种方式获得,比如,在DOS环境下利用dir命令获取文件夹中需要转换格式文件的文件名。

在步骤110之后,还包括:将热键命令对应的目标格式的对应关系预设在软件中,其中,不同热键命令对应不同的目标格式。

步骤120:通过os.starfile命令打开待转换文件。

在步骤120之后,创建若干个get_window函数;通过调用get_window函数判定软件中窗口是否开启。

get_window函数原型:HWND GetWindow(HWND hWnd,UNIT nCmd);参数:hWnd:窗口句柄。要获得的窗口句柄是依据nCmd参数值相对于这个窗口的句柄。

nCmd:说明指定窗口与要获得句柄的窗口之间的关系。

步骤130:接收用户输入的热键命令。

在步骤130之前,构建大于或者等于Python2.7的语言环境;编写Python脚本;构建待转换文件的列表的步骤,包括:创建Python列表,其中,Python列表中包含有多个待转换文件。

步骤140:确定热键命令对应转换的目标格式。

可以针对不同格式的文件进行多种格式转换设置,比如,将Solid Edge中dft文件转换成pdf文件时使用热键命令“Ctrl”和“R”,再比如,在UG中用热键命令“Ctrl”和“K”将prt文件转换成dwg文件。

步骤150:将待转换文件的列表中的文件的格式转换为目标格式的目标文件。

步骤150具体为:通过循环调用待转换文件列表的文件名,将待转换文件的格式进行批量转换。

待转换文件的格式为工业应用软件格式。

例如:三维软件Solid Edge的dft文件,再比如,工艺软件CAXA电子图板-工艺版的cxp文件。

需要说明的是,转换格式仅限于各类工艺应用软件自身支持的转换类型。

当对三维软件Solid Edge工程图dft文件批量转换成dwg文件时,本发明基于以下方式实现:

一种基于Python的应用软件格式转换实现方法,具体实施步骤如下:

1.下载并设置安装Python-2.7

2.新建Python文件名file_transform.py,内容如下:

import os

import win32gui

import pyautogui

import time

根据转换文件名建立列表,可以按下列语句扩展:

a=["0100-02.dft"]

a.append("0100-03.dft")

a.append("0100-04.dft")

3.定义get_window函数,

4.循环打开列表文件内容如下,其中m和n为自然数,n>m,

for i in range(m,n):

os.startfile(a[i])

5.调用函数并结合热键命令进行文档转换,内容如下:

get_Window1()

time.sleep(0.5)

pyautogui.hotkey("Ctrl","r")

get_Window2()

pyautogui.press("enter")

getGameWindow1()

6.调用函数并结合热键命令关闭文档,内容如下:

pyautogui.hotkey("Ctrl","F4")

time.sleep(0.5)

get_Window3()

7.从步骤3开始循环转换,

完成循环结束转换过程。100张图纸可5分钟转换完成。

当工艺软件CAXA电子图板-工艺版cxp文件批量转换成pdf文件时,本发明基于以下方式实现:

1.下载并设置安装Python-2.7

2.新建Python文件名file_transform.py,内容如下:

import os

import win32gui

import pyautogui

import time

根据转换文件名建立列表,可以按下列语句扩展,

a=["0100-02.cxp"]

a.append("0100-03.cxp")

a.append("0100-04.cxp")

3.定义get_window函数,

4.循环打开列表文件内容如下,其中m和n为自然数,n>m,

for i in range(m,n):

os.startfile(a[i])

5.调用函数并结合热键命令进行文档转换,内容如下:

get_Window1()

time.sleep(1)

get_Window2()

time.sleep(5)

pyautogui.hotkey("Ctrl","p")

time.sleep(0.1)

get_Window3()

time.sleep(0.1)

pyautogui.press("enter")

6.调用函数并结合热键命令关闭文档,内容如下:

get_Window1()

pyautogui.hotkey("Alt","F4")

time.sleep(0.2)

7.从步骤3开始循环转换,

8.完成循环结束转换过程。100张工艺可18分钟转换完成。

本发明实施例提供的方案,创建待转换文件的列表;通过os.starfile命令打开待转换文件;接收用户输入的热键命令;确定热键命令对应转换的目标格式;将待转换文件的列表中的文件的格式转换为目标格式的目标文件。本方案遵循框架的基本原则,将业务逻辑与脚本相匹配,可以随时根据需求进行变更,可较大降低对人员编码水平的要求,从而提供一种框架来适应不同程序的多种格式转换。实现方法相对简单,过程清晰,转换频率高,代码结构明朗,易于调整。

参照图2,示出了本发明实施例提供的一种基于Python的应用软件格式转换实现装置。

如图2所示,基于Python的应用软件格式转换实现装置包括:

第一创建模块201,用于创建待转换文件的列表;

开启模块202,用于通过os.starfile命令打开所述待转换文件;

接收模块203,用于接收用户输入的热键命令;

确定模块204,用于确定热键命令对应转换的目标格式;

转换模块205,用于将所述待转换文件的列表中的文件的格式转换为目标格式的目标文件。

可选地,所述装置还包括:

构建模块,用于在所述接收模块接收用户输入的热键命令之前,构建大于或者等于Python2.7的语言环境;

编写模块,用于编写Python脚本;

所述构建模块具体用于:

创建Python列表,其中,所述Python列表中包含有多个待转换文件。

可选地,所述装置还包括:

第二创建模块,用于在所述第一创建模块创建待转换文件的列表之后,创建若干个get_window函数;

判断模块,用于通过调用get_window函数判定软件中窗口是否开启。

可选地,所述转换模块具体用于:

通过循环调用所述待转换文件列表的文件名,将待转换文件的格式进行批量转换。

可选地,所述待转换文件的格式为工业应用软件格式。

可选地,在所述创建待转换文件的列表的步骤之后,所述方法还包括:

将热键命令对应的目标格式的对应关系预设在软件中,其中,不同热键命令对应不同的目标格式。

以上对本实发明所提供的一种基于Python的应用软件格式转换实现方法及装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

本发明说明书中未作详细描述的内容属本领域技术人员的公知技术。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号