【发布时间】:2018-05-02 01:41:21
【问题描述】:
解决了
我需要使用以下软件运行大量模拟:Energy Plus。 我想创建一个 Python 脚本,在其中进行这些调用以进行处理。 Energy Plus 需要 2 个输入文件,我已经将我希望 Energy Plus 使用的 2 个文件设置为默认文件,所以每次我拨打电话时,软件都会打开它准备好启动而无需修改输入。但我不知道如何让 Energy Plus 在我调用该过程之后运行。 目前这些是 2 串代码:
import subprocess as sp
sp.call(['C:\EnergyPlusV8-8-0\EP-Launch.exe'])
This image show the situation after the call
我想找到一种在通话后运行 Energy Plus 的方法,而无需“按下”按钮 "Simulate.."。
【问题讨论】:
-
您的问题与启动无关 - 您解决了这个问题。你的问题是关于通过找到它的窗口来自动化应用程序,找到按钮并单击它......除非你的软件有一个命令行开关来立即启动模拟,这将使它更容易......你谷歌/尝试这个:github.com/NREL/EnergyPlus/blob/develop/doc/… 并检查它的启动是否可编写脚本?
-
非常感谢您的帮助。我正在尝试使用这些命令。但是你知道我怎样才能将它直接集成到 python 脚本中。因为我仍然需要它,因为我想对输入文件执行一些操作,然后再次启动它等等。
-
如果最后一条评论中链接的输入参数都没有自动启动模拟(==为您按下按钮),您需要能够帮助您自动按下此按钮的人。如果您需要在启动之前修改 EL 文件,您可以使用 python 执行此操作,澄清您在问题中需要什么并调整标题(“Python 启动的应用程序,弹出窗口,需要在此窗口中自动单击按钮”)在 SO 和谷歌搜索类似的问题,并尝试那里提供的解决方案。如果您需要使用 pythong 修改输入文件,SO 提供了很多关于如何修改的答案
-
读取文本文件,解析它们,写回它们。
-
谢谢@PatrickArtner。之后我会更新标题,阅读更多关于你所说的内容。目前我已经做了 2 个类来处理我的文件。一个是我决定在我的输入文件中更改什么,另一个是我更新 txt 文件中的信息。
标签: python python-3.x process subprocess launch