向终端

时间:2017-08-19 17:09:42

标签: python python-3.x subprocess

Mpsyt是一个基于终端的Python库。它提供在youtube上搜索和播放音乐。此代码在youtube上提供搜索:

os.system("mpsyt search creep")

但是,我需要向终端发送一个命令,即" 1"。因为这" 1"在搜索列表上播放第一首音乐。我将如何发送" 1"命令shell存在哪个?

1 个答案:

答案 0 :(得分:0)

请尝试以下代码..

import subprocess

p = subprocess.Popen(['mpsyt', 'search', 'creep'], stdout=subprocess.PIPE, stdin=subprocess.PIPE, stderr=subprocess.STDOUT)
print(p.communicate(b'1')[0].strip().decode('UTF-8'))

您可以通过subprocess命令读取p.stdout.readline()的输出。在写入该命令之前,确保在控制台中有要打印的内容。否则你的意志计划将被卡住。