PYTHON 得到ADB的输出结果

import subprocess

ADB_PATH="adb"

def adbdevices(adbpath=ADB_PATH):
    return set([device.split('\t')[0] for device in subprocess.check_output([adbpath, 'devices']).splitlines() if str(device).endswith('\tdevice')])


def adbdevicesa(adbpath=ADB_PATH):
    for device in subprocess.check_output([adbpath, 'devices']).splitlines():
        #print(device)
        #print(type(device))
        #print(device.decode('utf-8'))
        if "device" in device.decode('utf-8') and "List" not in device.decode('utf-8') :
            print(device.decode('utf-8'))
    
    #if str(device).endswith('\tdevice')])


def adbshell(command, serial=None, adbpath=ADB_PATH):
    args = [adbpath]
    if serial is not None:
        args.extend(['-s', serial])
    args.extend(['shell', command])
    return subprocess.check_output(args)

def pmpath(pname, serial=None, adbpath=ADB_PATH):
    return adbshell('pm path {}'.format(pname), serial=serial, adbpath=adbpath)
adbdevicesa()

 

上一篇:python打开交互模式,并在交互模式下执行多个命令或者程序


下一篇:python使用ffmpeg合成文件