pythondialog
是一个模块,可让您在类似 ncurses 的界面中打印信息。我想使用该Dialog.progressbox()
方法打印subprocess.Popen()
命令的输出。
我面临的问题是progressbox()
只会打印/tmp/TemporaryDialogFile
. 它不会打印写入此文件的新内容。
我想知道如何才能从 .progressbox()
持续显示不断增长的输出流youtube-dl
。这应该是可能的:文档是这样说的。
相关代码:
def openDialog():
d = Dialog(dialog="dialog")
d.set_background_title("Random title")
w = os.open("/tmp/TemporaryDialogFile", os.O_RDWR|os.O_CREAT)
os.chdir("/tmp")
p = subprocess.Popen(["youtube-dl", "-citw", channel_url], stdout=w, universal_newlines=True)
d.progressbox(file_path="/tmp/TemporaryDialogFile", text="youtube-dl output:")
这就是它应该的样子