Python вызывает исполняемый файл, ждет, пока файл будет сгенерирован, добавьте или переименуйте _completed.xml - PullRequest
0 голосов
/ 21 сентября 2018

Я хочу вызвать исполняемый файл из python, ожидая, пока процесс сгенерирует возвращаемое имя файла для файла + _completed, например, example.xml - это файл, который генерирует исполняемый файл, затем возвращает имя сгенерированного файла с _complete, поэтому он должен вернутьexample_complete.xml здесь мой код

import subprocess
import requests
import xmltodict

xml_input=r'c:\workingfolder\customers.xml'
form_inputs='a:b:c'

def run_excel_again(xml_input,form_inputs):
  subprocess.Popen(['c:\\path to my excel.exe',xml_input,'/c',form_inputs])
 #check if file is created takes about a minute to generate file
 #subprocess.wait()-- is this possible how to check if the file generation 
  #   is completed --pass filename_completed.xml to 
  #another function  run_excel_again2(filename_completed.xml) 
   print('processing completed')
 return(filename.xml,filename_completed.xml)

run_excel_again(xml_input,form_inputs)

1 Ответ

0 голосов
/ 05 октября 2018
def run_excel_again(xml_input,form_inputs):
p= subprocess.Popen(['c:\\path to my excel.exe',xml_input,'/c',form_inputs])
#check if file is created takes about a minute to generate file
p.wait(timeout=none)-- Adding this statement worked for me 
#   is completed --pass filename_completed.xml to 
#another function  run_excel_again2(filename_completed.xml) 
print('processing completed')
return(filename.xml,filename_completed.xml)

Просто нужна эта строка кода

p.wait(timeout=none)
...