做Android手机系统或App测试的过程中,

如果碰到了bug,开发一般会需要测试人员提供当时的bug截图,

如何用Python 批处理脚本, 快速实现截图呢?

准备阶段

adb shell screencap -p /sdcard/a.png 命令, 可以实现手机截图并保存到/sdcard/a.png

adb pull /sdcard/a.png . 即可实现导出到当前路径(.代表当前路径)

os.system可以调用以上 adb 命令行工具

Python批处理脚本形式

其实和写DOS批处理脚本类似,

Python只需要用os.system()函数,

即可快速实现调用各类命令行命令。

#coding=utf-8

import os

print("屏幕截取中...请稍候!")

os.system("adb shell screencap -p /sdcard/a.png")

os.system("adb pull /sdcard/a.png .")

print("截图完毕!")

os.system("pause")

os.system("pause"),建议尽量加上,其含义是暂停程序执行,

等待用户查看脚本执行结果,避免运行完毕后直接自动关闭脚本执行cmd窗口。

Python面向过程函数形式

找到可以封装成一个函数块的小代码块儿, 用函数封装起来.

函数的命名一般建议用"动词", 所以我们命名为: "screencap",

封装好后, 用screencap()函数调用即可。

#coding=utf-8

import os

def screencap(): #封装

print("屏幕截取中...请稍候!")

os.system("adb shell screencap -p /sdcard/a.png")

os.system("adb pull /sdcard/a.png .")

print("截图完毕!")

screencap() #调用

os.system("pause")

Python面向对象类形式

以"一切皆可归类"的思想, 先抽象化出一个类来,

类名一般建议用"名词", 所以我们命名为"ScreenCapturer",

代表屏幕捕捉器, 且一般要驼峰式(首字母大写)来规范类的命名.

养成良好的类的初始化(init)的习惯,

初始化过程中, 可以pass(什么都不做)

这个ScreenCapturer 类, 目前只需要一个截屏的函数(动作功能)就足够了,

函数的命名一般建议用"动词", 所以我们命名为: "screencap" .

类是一个抽象的事物, 必须实例化成具体的对象后,

才能进行调用, 所以我们实例化并命名成了s_obj, 表明是一个对象.

实例化成具体对象后, 对象就可以调用screencap这个函数了.

#coding=utf-8

import os

class ScreenCapturer(): #类名

def __init__(self): #类的初始化

pass

def screencap(self): #定义类内部的函数名

print("屏幕截取中...请稍候!")

os.system("adb shell screencap -p /sdcard/a.png")

os.system("adb pull /sdcard/a.png .")

print("截图完毕!")

s_obj = ScreenCapturer() #类实例化成一个对象

s_obj.screencap() #用对象来调用函数

os.system("pause")

代码运行方式

确保Android设备通过USB线与电脑连接了,adb设备有效连接,

以上代码的3种实现形式都可以直接运行,

比如保存为adb_screencap.py并放在桌面,

每次需要截图的时候,双击运行adb_screencap.py,

就会在桌面上生成一个a.png。

有的Android系统是用screencap命令, 有的是用screenshot命令来截图。

需要自行尝试下。

python处理adb截屏_《自拍教程38》Python adb一键截屏相关推荐

  1. python处理adb截屏_《自拍教程38》Python_adb一键截屏

    做Android手机系统或App测试的过程中, 如果碰到了bug,开发一般会需要测试人员提供当时的bug截图, 如何用Python 批处理脚本, 快速实现截图呢? 准备阶段 adb shell scr ...

  2. openpyxl安装_自拍教程76Python 一键批量安装第三方包

    案例故事: 在测试环境搭建环节,尤其是需要在新的电脑上搭建Python测试环境时, 可以考虑把日常自动化测试所需要用到的第三方Python包(非自带内置包), 一次性批量安装上. 准备阶段 1.确保p ...

  3. 根据测试路径自动生成测试用例_自拍教程75Python 根据测试用例选择测试资源

    案例故事:Android手机音视频图片解码播放测试,有将近上千条用例, 包含了不同的音视频图片文件,每条用例都至少对应了一个测试资源文件.整个测试资源仓库,将近100G,一些视频比如High Prof ...

  4. 《自拍教程38》Python adb一键截屏

    做Android手机系统或App测试的过程中, 如果碰到了bug,开发一般会需要测试人员提供当时的bug截图, 如何用Python 批处理脚本, 快速实现截图呢? 准备阶段 adb shell scr ...

  5. android 截屏_图文小编福利:Apowersoft专业截屏王

    今天小编给大家带来一款非常强大的屏幕截图软件Apowersoft专业截屏王,英文名叫做Apowersoft Screen Capture Pro,通过这款软件可以帮助用户轻松进行屏幕截图,提供全屏.窗 ...

  6. python 结构体数组 定义_一篇文章弄懂Python中所有数组数据类型

    前言 数组类型是各种编程语言中基本的数组结构了,本文来盘点下Python中各种"数组"类型的实现. list tuple array.array str bytes bytearr ...

  7. python学好了能干啥_新手该如何学python怎么学好python?_python学好了能干什么

    1)学好python的第一步,就是马上到www.python.org网站上下载一个python版本.我建议初学者,不要下载具有IDE功能的集成开发环境,比如Eclipse插件等. 2)下载完毕后,就可 ...

  8. python中年大叔学编程_中年大叔学编程-Python简单操作文件

    原标题:中年大叔学编程-Python简单操作文件 在计算机中,经常打交道的就是各种文档,用得比较多的软件就是office和记事本来操作文件,那么我们试试用Python来简单读写文件. Open函数的用 ...

  9. python编程怎么建立工程_教你如何用Python脚本快速创建项目

    相信初学Cocos2D者对Python还很陌生,今天本篇教程教你如何用Python脚本快速创建项目. 在Cocos2d-x2.1.4以上的版本中,取消了使用vs模版创建项目的方法,开始使用python ...

最新文章

  1. 位域(bit fields)简介
  2. Redis根据是否存在设置值
  3. java.lang.reflect.Constructor
  4. figma设计_5位来自杂乱无章的设计师的Figma技巧
  5. 01_SpringCoud 整合SpringCoud alibaba Nacos
  6. [ES6] 细化ES6之 -- 前端模块化
  7. 阿里云智能语音交互服务导览
  8. SAP MM ‘Pricing Date Control‘字段的理解
  9. 谈一下ACM的入门书籍及方法
  10. utilities(matlab)—— PSNR 值的计算
  11. r中gglot怎么组合多张图_继电器组合扫盲篇
  12. 21. PHP 表单验证 - 完成表单实例
  13. QT cmd强制删除文件
  14. 平面设计师经常去哪些网站?
  15. C++不知算法系列之高精度数值处理算法
  16. 关于eclipse项目中项目上直接出现大红感叹号的问题
  17. 计算机与应用在线作业答案,计算机应用基础在线作业及答案
  18. PHP模式-单例模式
  19. JavaScript设计模式浅析
  20. mysql备份工具xtr,xtrbackup备份mysql与恢复

热门文章

  1. 16进制颜色代码大全
  2. 600度近视眼恢复方法_高度近视600度如何恢复视力?这三大办法
  3. 一度智信开网店靠谱吗
  4. CVPR:Refining Pseudo Labels with Clustering Consensus over Generations for Unsupervised Object Re-ID
  5. 关于移动视频直播技术,关键干货都在这里了(三)编码和封装
  6. html 字体模糊,详解css3使用transform出现字体模糊的解决办法
  7. python分析红楼梦中人物形象_《红楼梦》中女性人物形象分析
  8. 全靠这份Java知识点PDF大全,先睹为快
  9. # Sql语句过长报错、查询慢优化方案探索
  10. 墨者_密码学加解密实训(摩斯密码第1题)