python 运行其他命令行工具,实时打印输出内容

起因, 目的:

python 运行一个命令,最简洁的写法是:

python 复制代码
import os 

# 转换视频格式。
cmd = "ffmpeg -i a1.ts -c copy a1.mp4"

os.system(cmd)
问题:

如果上面的视频比较大,需要运行很长时间,那么感觉就像是卡住了, 不动了。 (而实际却还在运行)

其他情况,比如使用 streamlink 下载远程视频,也是一样的效果。

解决办法: 实时输出:
python 复制代码
import subprocess

cmd = "ffmpeg -i a3.ts -c copy a3.mp4"

with subprocess.Popen(cmd.split(" "), stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True) as process:
    for line in process.stderr:  # 输出结果
        print(line, end="")      # 避免新的空行


个人接单,留学生辅导,python, R语言,私聊.

老哥,支持一下啊。

相关推荐
深蓝海拓12 小时前
基于QtPy (PySide6) 的PLC-HMI工程实战记录(七)创建适合HMI项目的数字输入/显示类部件
python
INGNIGHT12 小时前
1908 · 布尔表达式求值(stack单调栈&dfs)
开发语言·c++·算法
MartinYeung513 小时前
[论文学习]MPIB:医疗提示注入基准——针对LLM临床安全性的系统性评估
人工智能·python·学习
এ慕ོ冬℘゜13 小时前
深入理解浏览器全屏 API:从 requestFullscreen 到全屏实战
开发语言·html
用户83562907805113 小时前
使用 Python 为 PowerPoint 演示文稿添加评论
后端·python
阿图灵13 小时前
OpenCV 绘图五件套:画圆、文本、线段、矩形与椭圆
图像处理·人工智能·python·opencv·计算机视觉·绘图
web行路人13 小时前
AI全栈之旅 · 第一周总结
python
slacker-kian13 小时前
HuggingFace API加载模型超时:用 ModelScopeAPI 替代
人工智能·python·transformer·huggingface·blip·modelscope·blipprocessor
七夜zippoe14 小时前
DolphinDB 高可用部署实战:从容灾设计到故障自动转移
开发语言·python·高可用·容灾·dolphindb