python - subprocess模块怎样返回执行文件内容?

查看:138
本文介绍了python - subprocess模块怎样返回执行文件内容?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

如下面的代码,调用mplayer播放本地音频文件,是否能够通过p获取到filepath文件中的数据?

p=subprocess.Popen(["mplayer",filepath],shell=False,stdin=subprocess.PIPE,stderr=subprocess.PIPE)

filepath也可能是个url,需要其中的数据,但是不想额外地再次访问这个地址。
-------补充-------
试着调试时跟进去过,想看看有没有在调用mplayer前获取了文件内容,但是到了subprocess模块里,单步调试不管用了,所以想知道是否在调用mplayer前subprocess模块已经拿到数据,如果是那就能获取这些数据了。

解决方案

subprocess只是一个调用命令的库, 它的stdin, stdout也只是储存 命令输出的 结果, 如果你的命令, 在执行过程中, 有结果,有文本或者什么别的输出, 那么可以获取, 但是如果你说像解析这个音频文件, 那应该是不行的, 或者你需要别的解析方式去解释, 或者直接打开那个文件, 说不定也能得到你想要的

这篇关于python - subprocess模块怎样返回执行文件内容?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆