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语言,私聊.

老哥,支持一下啊。

相关推荐
weixin_433179331 分钟前
Python - word jumble游戏
开发语言·python
AAA.建材批发刘哥9 分钟前
03--C++ 类和对象中篇
linux·c语言·开发语言·c++·经验分享
jghhh0112 分钟前
MATLAB实现弹道仿真源代码
开发语言·matlab
拾荒的小海螺36 分钟前
C#:PdfiumViewer 高效解析和操作 PDF 的技术指南
开发语言·pdf·c#
人道领域38 分钟前
【零基础学java】(方法引用)
java·开发语言
Macbethad39 分钟前
TwinCAT半导体设备IO Simulator技术方案
开发语言
Iridescent11211 小时前
Iridescent:Day48
python
BBB努力学习程序设计1 小时前
Python迭代器与生成器:优雅的惰性计算艺术
python
BBB努力学习程序设计1 小时前
Python描述符协议:属性访问的底层魔法
python
qq_336313931 小时前
java基础-IO流(打印流)
java·开发语言