Я выполняю программу, которая подключается к внешнему серверу из python.
Если пользователь не аутентифицирован, программа запрашивает имя пользователя и пароль.Подпроцесс убийства после первой строки
Вот как выход из подпрограммы выглядит:
Authentication Required
Enter authorization information for "Web API"
<username_prompt_here>
<password_prompt_here>
Я хочу убить подпроцесс сразу после «Требуется проверка подлинности» печатается, но проблема в том, что мой код работает неправильно - подпроцесс просит полномочий и после пользователь предоставляет его, подпроцесс убит.
Вот мой код:
with subprocess.Popen(self.command, stdout=subprocess.PIPE, shell=True, bufsize=1, universal_newlines=True) as process:
for line in process.stdout:
if 'Authentication Required' in line:
print('No authentication')
process.kill()
print(line)
Что я делаю неправильно?
Можете ли вы опубликовать полный код? или он завершен? Я не вижу, где вы запрашиваете пользователя для имени пользователя и пароля. –
Я не подскажу - подпрограмма это делает (посмотрите на attatched output). – Djent
, и вы хотите немедленно удалить этот процесс после строки, требуемой для проверки подлинности? –