【MonkeyRunner】用python编写脚本查看设备信息

原以为是个简单的操作,在实践的时候发现了一些问题。

python脚本 test.py:

from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice
device = MonkeyRunner.waitForConnection()
a = device.getProperty("build.device")
print(a)

在cmd中运行脚本

>>>monkeyrunner  tset.py

这样会报错

LookupError: unknown encoding 'ms936'

在网上查阅一番后,原因是编码格式不同,查到的解决方案为:

在cmd中先输入chcp 437然后再运行脚本

上面这种方法亲测可用,但是本人觉得这个需要提前在cmd中输入的方法很难受,于是提出另一种解决方法:

在Python 中获取设备信息的时候转换成string类型,就可以正常输出了

修改test.py 的第三行如下:

a = str(device.getProperty("build.device"))

然后再运行就可以输出设备名称了。

通过MonkeyDevice.getProperty()方法可以查看很多设备信息

  • build.board 设备系统板的的代码名称

  • build.brand 操作系统的提供商

  • build.device 设备设计名称

  • build.fingerprint 设备唯一标识符

  • build.ID 设备编号

  • build.model 设备的用户可见名称

  • build.product 整体产品名称

  • build.CPU_ABI 代码指令集

  • build.manufacturer 制造商

  • build.version.incremental 内部代码

  • build.version.release 此版本用户可见名称

  • build.version.sdk 此版本用户可见SDk版本

  • build.version.codename 开发代号

  • display.width 设备显示宽度

  • display.height 设备显示高度

  • display.density 显示逻辑密度

  • am.current.package 正在运行的包的名称

  • am.current.action 正在进行的活动

  • am.current.comp.class 启动当前活动的组件的类名

  • am.current.comp.package 启动当前多动的组件的包名

  • am.current.data 当前活动的Intent中包含的数据

  • am.current.categories 当前活动的Intent指定的类别

  • clock.realtime 设备重启后的毫秒数,包括睡眠时间

  • clock.uptime 设备重启后的毫秒数,不包含睡眠时间

  • clock.millis 自1970年1月1日起到当前的毫秒数

【MonkeyRunner】[技术博客]用python编写脚本查看设备信息的更多相关文章

  1. [转]有哪些值得关注的技术博客(Java篇)

    有哪些值得关注的技术博客(Java篇)   大部分程序员在自学的道路上不知道走了多少坑,这个视频那个网站搞得自己晕头转向.对我个人来说我平常在学习的过程中喜欢看一些教程式的博客.这些博客的特点: 1. ...

  2. 一文搞定scrapy爬取众多知名技术博客文章保存到本地数据库,包含:cnblog、csdn、51cto、itpub、jobbole、oschina等

    本文旨在通过爬取一系列博客网站技术文章的实践,介绍一下scrapy这个python语言中强大的整站爬虫框架的使用.各位童鞋可不要用来干坏事哦,这些技术博客平台也是为了让我们大家更方便的交流.学习.提高 ...

  3. [技术博客] Android 自动化测试

    [技术博客] Android 自动化测试 安卓自动化测试工具与平台的搭建 类似于网页端自动化,安卓测试的自动化也主要是针对控件的自动化.其原理就是通过python(其他语言) 的脚本来代替我们手动完成 ...

  4. [技术博客]nginx 部署 apt 源

    [技术博客] nginx 部署 apt 源 出于各种各样的原因, 有时需要自己配置apt源, 比如发布自己编写的debian软件包, 内网中只有一台电脑可以访问外网,或者在本地配置自己的apt源.我们 ...

  5. 【软工】[技术博客] 用Monaco Editor打造接近vscode体验的浏览器IDE

    [技术博客] 用Monaco Editor打造接近vscode体验的浏览器IDE 官方文档与重要参考资料 官方demo 官方API调用样例 Playground 官方API Doc,但其搜索框不支持模 ...

  6. [技术博客] BeautifulSoup4分析网页

    [技术博客] BeautifulSoup4分析网页 使用BeautifulSoup4进行网页文本分析 前言 进行网络爬虫时我们需要从网页源代码中提取自己所需要的信息,分析整理后存入数据库中. 在pyt ...

  7. [技术博客] 敏捷软工——JavaScript踩坑记

    [技术博客] 敏捷软工--JavaScript踩坑记 一.一个令人影响深刻的坑 1.脚本语言的面向对象 面向对象特性是现代编程语言的基本特性,JavaScript中当然集成了面向对象特性.但是Java ...

  8. 【转】【技术博客】Spark性能优化指南——高级篇

    http://mp.weixin.qq.com/s?__biz=MjM5NjQ5MTI5OA==&mid=2651745207&idx=1&sn=3d70d59cede236e ...

  9. IT技术博客收藏

    1. coolshell.cn 特点: 每篇都是精品 2. 云风 特点: 3. 阮一峰的博客 特点:高精深 3. offbye涛声依旧-全端技术博客 特点: android的开发技术比较多,非常值得一 ...

随机推荐

  1. JavaScript 数组(三)数组方法

    常用方法及案例参考这篇:数组对象及常用方法

  2. SpringBoot+Security+MyBatis+ES+MQ+Redis+Docker+Vue的电商系统

    今天鹏哥给大家推荐的项目是一套电商系统,包括前台商城系统及后台管理系统,基于SpringBoot+MyBatis实现. 前台商城系统包含首页门户.商品推荐.商品搜索.商品展示.购物车.订单流程.会员中 ...

  3. httpget请求测试用Java代码的实现方法

    原文:http://www.cnblogs.com/johnson-yuan/p/6637906.html 1.首先要在eclipse中导入HttpClient的jar包. 2.新建类并写入一下代码: ...

  4. 下载文件时-修改文件名字 Redis在Windows中安装方法 SVN安装和使用(简单版) WinForm-SQL查询避免UI卡死 Asp.Net MVC Https设置

    下载文件时-修改文件名字   1后台代码 /// <summary> /// 文件下载2 /// </summary> /// <param name="Fil ...

  5. Excel 批量导入Mysql(创建表-追加数据)

    之前弄数据库的时候, 测试excel导mysql, 中间用pandas 处理后再入库.  直接上代码, 此种有真意, 尽在不言中. #!/usr/bin/env python # coding: ut ...

  6. Odoo仪表盘详解

    转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/10826324.html 一:仪表盘与看板的区别 kanban:kanban是一种视图类型,卡片式视图.可以为 ...

  7. 提高用git下载代码时的成功率

    在用git clone下载一些比较大的仓库时,经常会遇到由于仓库体积过大,网络也不稳定,导致下了半截就中断了,可以参考如下的下载方法. 先用创建一个空目录,然后用git init初始化,然后用git ...

  8. Linux-crontab定时执行脚本配置

    crontab是一个可以根据自己配置的命令定时执行脚本的服务 安装crontab(centos) yum install Vixie-cron yum install crontabs vixie-c ...

  9. CentOS6.7安装部署php5(详解安装选项与主配置文件)

    模块安装---PHP 编译环境:gcc  gcc-c++   pcre-devel  openssl-devel   libxml2   libxml2-devel   bzip   bzip-dev ...

  10. Nginx下隐藏index.php

    在用NGINX搭建web网站时遇到一个问题,那就是除了网站的首页能够正常打开,其他的子网站都打不开,显示找不到文件.但是如果你在网址后面加上index.php,子网站就又可以打开了.那么我们怎么才能不 ...