python处理adb截屏_《自拍教程38》Python_adb一键截屏
做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一键截屏相关推荐
- 《自拍教程38》Python adb一键截屏
做Android手机系统或App测试的过程中, 如果碰到了bug,开发一般会需要测试人员提供当时的bug截图, 如何用Python 批处理脚本, 快速实现截图呢? 准备阶段 adb shell scr ...
- openpyxl安装_自拍教程76Python 一键批量安装第三方包
案例故事: 在测试环境搭建环节,尤其是需要在新的电脑上搭建Python测试环境时, 可以考虑把日常自动化测试所需要用到的第三方Python包(非自带内置包), 一次性批量安装上. 准备阶段 1.确保p ...
- 根据测试路径自动生成测试用例_自拍教程75Python 根据测试用例选择测试资源
案例故事:Android手机音视频图片解码播放测试,有将近上千条用例, 包含了不同的音视频图片文件,每条用例都至少对应了一个测试资源文件.整个测试资源仓库,将近100G,一些视频比如High Prof ...
- direct wifi 投屏_告别Wifi直接投AOC无线投屏显示器轻松用
显示器领域内不乏一些功能实用的创新技术,也不乏一些与传统显示器相比,显得"非同一般"的显示器.今天我们要聊的主题,就是AOC的一款"无线投屏显示器",顾名思义, ...
- direct wifi 投屏_direct wifi 投屏_告别Wifi直接投AOC无线投屏显示器轻松用
显示器领域内不乏一些功能实用的创新技术,也不乏一些与传统显示器相比,显得"非同一般"的显示器.今天我们要聊的主题,就是AOC的一款"无线投屏显示器",顾名思义, ...
- win10无线投屏_日臻薄技 | 手机如何投屏到电脑
手机怎么投屏到电脑显示器?经过多方搜寻,我找到了以下三种方法:1通过Win10自带的投影功能 你的电脑系统是Win7还是Win10?现在应该都用上Win10了吧,没用上你就落伍了.Win10怎么让手机 ...
- ensp启动设备蓝屏_超全超详细的电脑蓝屏问题解决方案汇总
生活太难了!每天搬砖已经够不容易,电脑还作妖: 设计图还差最后一个图层,蓝屏了!!财务工资表格马上统计完,蓝屏了?!熬了一宿马上写完1万字稿件,蓝屏了- 今天,我就带大家轻松搞定蓝屏. 什么是蓝屏 蓝 ...
- win10间歇性闪屏_今天解读win10桌面自动刷新闪屏的完全解决手法
今天又有网友来问小编win10桌面自动刷新闪屏的问题,这个问题之前都已经解答过了.win10桌面自动刷新闪屏这样的不常见的问题,还真把一些大神给弄懵了.那么这个win10桌面自动刷新闪屏问题该如何才能 ...
- Android双屏锁屏,教大家vivonex双屏版怎么一键锁屏的方法
最近有挺多人都跟小编说想要了解vivonex双屏版怎么一键锁屏,那么或许你会好奇为什么要了解vivonex双屏版怎么一键锁屏,这里小编就来给大家细细的说道说道,如今很多小伙伴们在玩手机与各种电子设备的 ...
- python处理adb截屏_《自拍教程38》Python adb一键截屏
做Android手机系统或App测试的过程中, 如果碰到了bug,开发一般会需要测试人员提供当时的bug截图, 如何用Python 批处理脚本, 快速实现截图呢? 准备阶段 adb shell scr ...
最新文章
- python ndarray
- CCF-GAIR 2020 全球人工智能和机器人峰会今日开幕
- 洛谷 P3383 【模板】线性筛素数
- python 删除n天前文件_Linux 按时间批量删除文件命令(删除N天前文件)
- 【深度学习】神经网络模型特征重要性可以查看了!!!
- Linux查看tar实用程序,linux tar指令常用选项
- 1284:摘花生《信息学奥赛一本通》
- django 1.8 官方文档翻译:5-1-2 表单API
- 理解CSRF(跨站请求伪造)
- 教你如何用 Linux Shell脚本判断IP是否合法(多种方法)
- 电子元器件如何检测和筛选
- Python常用标准库、模块
- 《私募股权基金投资基础知识》---第五章
- Flink SQL 流计算可视化 UI 平台
- composer设置镜像
- 为什么在AndroidManifest.xml中Activity的theme用不了Theme.Light.NoTitleBar?
- CheatSheet——OpenCV
- 思岚科技再次出征CES 看点十足
- 汽车价格预测回归分析模型
- delphi bde mysql_Delphi- 连接MySQL数据库BDE