Python3 flush wget.download прогресс вывода - PullRequest
0 голосов
/ 13 сентября 2018

У меня есть веб-приложение, которое вызывает скрипт удаленного Python my_script.py. Сценарий python в основном просто загружает файл, используя wget.download для загрузки файла из Интернета, что-то вроде этого:

my_script.py:

def download_kit():
    ...
    wget.download(url, '/Downloads/')

   if __name__ == "__main__":
      download_kit()

Когда я запускаю этот скрипт на удаленной машине, я вижу вывод индикатора выполнения в консоли следующим образом:

74% [.................................................... ] 531546112 / 714915930

Я хочу сбросить этот вывод в файл и иметь возможность видеть текущее обновление в файле, поэтому, когда я его отслеживаю, я могу видеть его обновление на лету.

Я пытаюсь написать это так:

python3 download_kit.py > output.log

Однако, когда я tail -f output.log в другом терминале, я не вижу, как отображается индикатор выполнения. Я пытался использовать sys.stdout.flush(), но не повезло. Любые идеи о том, как я могу очистить прогресс вывода?

...