2016-06-16 2 views
0

私は、hcitool lescanを使ってbleデバイスをPythonコードでスキャンしようとしていました。 hcitool lescanはコマンドライン上でうまく動作しますが、サブプロセスを使用して出力を返すことはできません.Popen。コードは、lescanが従来のbluetoothのスキャンという 'スキャン'に置き換えられたときに正常に動作します。 私のコードはhcitool lescanの出力を保存するには?

import os 
import time 
import subprocess 
proc = subprocess.Popen(['sudo','timeout', '20s','hcitool', 'lescan'],stdout=subprocess.PIPE) 
proc.wait() 
lines = proc.stdout.readlines() 
print lines 
+0

ここで、 '.wait()'を '.readlines()'の前に呼び出す考えはありますか? – jfs

答えて

0

コミュニケーションを試みましたか?

proc = subprocess.Popen(...) 
stdout, stderr = proc.communicate() 
0

使用

from commands import getoutput as shell 
s = shell('hcitool scan') 

sのあなたが探しているものを含む文字列です。

関連する問題