首先我们先看一下使用adb查看Android手机信息的指令

#获取手机名称
NAME = 'adb shell getprop ro.product.model'
#获取手机版本
VERSION = 'adb shell getprop ro.build.version.release'
#获取手机厂商
PRODUCER = 'adb shell getprop ro.product.brand'

如果我们忘记具体系统属性的名字,我们可以使用grep进行过滤,比如:

adb shell getprop | grep product

显示如下:

那么我们在用python写自动化测试的时候应该这样使用:

import os

deviceName = os.popen('adb shell getprop ro.product.model').read()
print(deviceName)
platformVersion = os.popen('adb shell getprop ro.build.version.release').read()
print(platformVersion)
device = os.popen('adb shell getprop ro.product.name ').read()
print(device)

#coding=utf8
import os,subprocess
import re def connectDevcie():
'''检查设备是否连接成功,如果成功返回True,否则返回False'''
try:
'''获取设备列表信息,并用"\r\n"拆分'''
deviceInfo= subprocess.check_output('adb devices').split("\r\n")
'''如果没有链接设备或者设备读取失败,第二个元素为空'''
if deviceInfo[1]=='':
return False
else:
return True
except Exception,e:
print "Device Connect Fail:",e def getAndroidVersion():
try:
if connectDevcie():
#获取系统设备系统信息
sysInfo= subprocess.check_output('adb shell cat /system/build.prop')
#获取安卓版本号
androidVersion=re.findall("version.release=(\d\.\d)*",sysInfo , re.S)[0]
return androidVersion
else:
return "Connect Fail,Please reconnect Device..."
except Exception,e:
print "Get Android Version:",e def getDeviceName():
try:
if connectDevcie():
#获取设备名
deviceInfo= subprocess.check_output('adb devices -l')
deviceName=re.findall(r'device product:(.*)\smodel',deviceInfo,re.S)[0]
return deviceName
else:
return "Connect Fail,Please reconnect Device..."
except Exception,e:
print "Get Device Name:",e print getDeviceName(),"\n",getAndroidVersion()

  

原文:https://blog.csdn.net/zhuohaiyy/article/details/80213516

   https://my.oschina.net/u/2291665/blog/885076

python+adb实现自动化获取手机信息的更多相关文章

  1. Python+Selenium自动化-获取页面信息

    Python+Selenium自动化-获取页面信息   1.获取页面title title:获取当前页面的标题显示的字段 from selenium import webdriver import t ...

  2. 【风马一族_Android】Android 从命令行界面获取手机信息

    Android 从命令行界面获取手机信息 1: cmd 打开命令行界面 2:adb devices   获取与电脑相连的设备,例如:模拟器.真机(手机) (右击“标记”,选择设备名称,点击“Ctrl+ ...

  3. 使用 python 提取照片中的手机信息

    使用 python 提取照片中的手机信息 最近在做一个项目,有一个很重要的点是需要获取使用用户的手机信息,这里我选择从照片中获取信息.有人会问为什么不从手机里面直接获取设备信息.由于现在android ...

  4. iOS 整理笔记 获取手机信息(UIDevice、NSBundle、NSLocale)

    /*    iOS的APP的应用开发的过程中,有时为了bug跟踪或者获取用反馈的需要自动收集用户设备.系统信息.应用信息等等,这些信息方便开发者诊断问题,当然这些信息是用户的非隐私信息,是通过开发ap ...

  5. Android 获取手机信息,设置权限,申请权限,查询联系人,获取手机定位信息

    Android 获取手机信息,设置权限,申请权限,查询联系人,获取手机定位信息 本文目录: 获取手机信息 设置权限 申请权限 查询联系人 获取手机定位信息 调用高德地图,设置显示2个坐标点的位置,以及 ...

  6. android 获取手机信息工具类

    package com.yqy.yqy_listviewheadview; import android.content.Context; import android.telephony.Telep ...

  7. 微信小程序开发(六)获取手机信息

    // succ.js var app = getApp() Page({ data: { mobileModel: '', // 手机型号 mobileePixelRatio: '', // 手机像素 ...

  8. android获取手机信息大全

    IMEI号,IESI号,手机型号: private void getInfo() { TelephonyManager mTm = (TelephonyManager) getSystemServic ...

  9. android获取手机信息2

    IMEI号,IESI号,手机型号: private void getInfo() { TelephonyManager mTm = (TelephonyManager) getSystemServic ...

随机推荐

  1. Django mysql应用

    环境:python3.Django2 1.安装驱动mysqlclient pip3 install mysqlclient 2.创建一个数据库 CREATE DATABASE database_nam ...

  2. 【sql server】“因为数据库正在使用,所以无法获得对数据库的独占访问权” 解决方案汇总

    #事故现场: 在尝试还原数据库时,出现如下错误: #方案一:设置数据库在单用户模式下工作: 1.数据库上右键“属性”: 2.“选项”->“限制访问”,选择“SINGLE_USER” 3.还原数据 ...

  3. weblogic找不到数据源

     查看weblogic日志 报错是每个数据源都找不到. 查看oracle用户状态 select username,account_status,lock_date from dba_users;  解 ...

  4. JGUI源码:Tab组件实现(9)

    程序界面效果如下 Tab组件由多个TabItem组成,超出部分隐藏,可以通过左右按钮滑动显示出来 1.封装 // 初始化内容 $(function () { J.JTab($(".jgui- ...

  5. Servlet处理Json请求数据包

    request.setCharacterEncoding('UTF-8'); response.setContentType('text/html;charset=UTF-8'); String ac ...

  6. C#调用Bartender打印

    BarTender是一款优秀的条形码打印软件,可以支持很多种类型的条形码设计和打印,具体大家可参考他的官网(http://www.seagullscientific.com/aspx/products ...

  7. js 个人笔记

    /* * Created by lsw 2018-06 */ ; (function (window) { //js ready var ie = !!(window.attachEvent & ...

  8. CentOS配代理服务器

    背景: 某云上有台Windows主机,为了省钱(...),购买的1M带宽... 然后日常只有我用,特别卡,嫌弃得不行. 最近接触到代理,琢磨代理连接到局域网内带宽大的主机,是否上网速度会蹭蹭得涨?实践 ...

  9. VGA、DVI、HDMI三种视频信号接口

    目前,电脑显示器常见的接口主要有HDMI.DP.DVI.VGA等4种接口.显示器数据线性能排名:DP>HDMI>DVI>VGA.其中 
VGA是模拟信号,已经被主流所淘汰,DVI.H ...

  10. 题解-UOJ 455雪灾与外卖

    Problem \(\mathrm{UOJ~455}\) 题意概要:一根数轴上有 \(n\) 只老鼠与 \(m\) 个洞,每个洞有费用与容量限制,要求每只老鼠要进一个洞且每个洞的老鼠不超过自身的容量限 ...