美文网首页Python
Python+ADB 自动化获取手机信息(一)

Python+ADB 自动化获取手机信息(一)

作者: 巴鶴 | 来源:发表于2021-05-10 20:22 被阅读0次

前文分享: 移动端云测试平台构思--https://www.jianshu.com/p/3b631519017d,本文分享如何获取手机常用自动化数据信息。
安装JdK和SDK环境配置参考下面Appium环境搭建文章链接
https://www.jianshu.com/p/b19877c4cc32

获取设备id

devices = subprocess.check_output('adb devices').decode()
print(colored(devices, 'yellow'))

获取设备信息

Devices = subprocess.check_output('adb devices').decode().strip().split("\r\n")
for i in range(1, len(Devices)):
    udid = Devices[i].split('\t')[0]
    print(colored("设备号: %s" % udid, 'red'))

手机品牌

 '''手机品牌'''
    brand = subprocess.check_output('adb -s ' + udid + ' shell getprop ro.product.brand').decode().strip()
print(colored("手机品牌: %s" % brand, 'cyan'))

获取手机型号

 model = subprocess.check_output('adb -s ' + udid + ' shell getprop ro.product.model').decode().strip()
print(colored("手机型号: %s" % model, 'blue'))

获取Android版本

version = subprocess.check_output('adb -s ' + udid + ' shell getprop ro.build.version.release').decode().strip()
print(colored("Android版本: %s" % version, 'green'))

获取手机分辨率

wmsize = subprocess.check_output('adb -s ' + udid + ' shell wm size').decode().strip()
print(colored("手机分辨率: %s" % wmsize, 'magenta'))

结果返回信息

打印结果.jpg

封装代码

import subprocess
from termcolor import colored

def get_devices():
    list = []
    '''获取设备信息'''
    devices = subprocess.check_output('adb devices').decode().strip().split("\r\n")
    for i in range(1, len(devices)):
        udid = devices[i].split('\t')[0]
        if udid !="":
            brand = subprocess.check_output('adb -s ' + udid + ' shell getprop ro.product.brand').decode().strip()
            model = subprocess.check_output('adb -s ' + udid + ' shell getprop ro.product.model').decode().strip()
            version = subprocess.check_output('adb -s ' + udid + ' shell getprop ro.build.version.release').decode().strip()
            wmsize = subprocess.check_output('adb -s ' + udid + ' shell wm size').decode().strip()
        list.append("设备id:"+udid + ' ' + "品牌:" + brand + " " + "手机型号:" + model + " " + "Android版本:"+ version + " " + "屏幕分辨率:"+ wmsize)
    return list

if __name__ == "__main__":
    list = get_devices()
    for i in list:
        print(colored("设备号: %s" % i, 'red'))
打印结果.jpg

相关文章

网友评论

    本文标题:Python+ADB 自动化获取手机信息(一)

    本文链接:https://www.haomeiwen.com/subject/phtwdltx.html