我使用pyinstaller将我的Python脚本转换为.exe文件。
我使用的命令是pyinstaller --onefile QlikView.py
我试图创建一个运行QlikView.exe的批处理文件,该文件使用Selenium scraper获取Excel工作表并等待它完成。然后批处理文件运行xls_to_csv.exe。但是,批处理文件立即退出,而不是等待exe文件完成。
我的批处理文件目前看起来像这样:
start /wait QlikView.exe
start /wait xls_to_csv.exe
根据this page:
直接从批处理文件调用exe,或使用启动/等待将起作用,但有一个警告。
如果您调用的exe然后创建其他进程,例如调用另一个exe,然后退出批处理文件将在被调用的exe终止后继续处理,因为它不知道它启动的其他进程。
在您的情况下,这是一个真正的问题,因为安装程序通常从某种形式的压缩容器中提取文件,这些容器可能嵌入在exe本身中,然后触发其中一个提取的文件并退出。某些安装程序提供命令行参数,告诉原始exe在整个安装完成之前不要退出,因此您可能需要调查这些内容。除此之外,单凭批处理文件并没有真正解决这个问题,并且需要一个程序化的解决方案来解决。
那么我该如何解决这个问题呢?有没有我用pyinstaller改变的东西?