Как обеспечить завершение кода Python с помощью vbscript, когда я загружаю vbscript для защиты crt с помощью модуля pyautogui? - PullRequest
0 голосов
/ 04 октября 2018

Я пытаюсь создать автоматизацию на основе RPA для запуска vbscript в Secure CRT.В этом я загружаю vbscript в Secure CRT, используя модуль pyautogui.Теперь мой код заканчивается даже до того, как завершится загрузка всех логов из vbscript.Как я могу убедиться, что мой python заканчивается только после успешного запуска vbscript и завершения всей загрузки, чтобы я мог закрыть безопасный CRT?

1 Ответ

0 голосов
/ 02 мая 2019

Я решил эту проблему следующими способами:

  1. Вместо того, чтобы использовать модуль pyautogui для загрузки vbscript на secureCRT, я использовал модуль подпроцесса, так как secureCRT имеет возможности командной строки для запуска vbscript:

    import subprocess
    RunVbs='\"'+ secureCRTPath +'\"' + ' /SCRIPT ' + '\"' + vbscriptPath + '\"'
    subprocess.Popen(RunVbs)
    
  2. Чтобы гарантировать, что скрипт python завершится только после полного запуска vbscript, я создал текстовый файл в конце vbscript, который непрерывно проверялся скриптом python.При поиске текстового файла, созданного vbscript, сценарий python завершается:

    import time, os
    isVbsExecuted = False
    while isVbsExecuted == False:
        if os.path.exists('C:\VBSPath\OutputVBS.txt'):
            isVbsExecuted = True
        else:
            time.sleep(2)
    
...