背景:

测试过程中,总是需要对Android设备进行截图,然后在截图中标注问题描述;

手动方式:

1.使用adb scrrencap /sdcard/screen.png 命令对Android设备进行截图

2.然后再使用adb pull /sdcard/scrren.png导入到PC端

3.使用QQ截图进行问题描述标注

自动化实现:

将scrrencap.py文件copy至某个目录下,直接执行将保存截图到当前目录并自动打开展示;
C:\>screencap.py

使用方法:

C:\>screencap.py -h
Usage: screencap.py [-d <directory> -f <filename>] Automatic screenshots for android, After in PC display . Options:
-h, --help show this help message and exit
-d DIRECTORY, --dir=DIRECTORY
directory of save the address
-f FILENAME, --filename=FILENAME
filename of screen shots file name
 import os
import time
from optparse import OptionParser def option():
# 获取脚本所在当前目录
current_dir = os.path.dirname(__file__)
# 根据截图时间生成默认文件名:20170722142831.png
file_name = "%s.png" % time.strftime("%Y%m%d%H%M%S", time.localtime()) usage = "screencap.py [-d <directory> -f <filename>]"
description = "Automatic screenshots for android, After in PC display ." p = OptionParser(usage=usage, description=description) p.add_option("-d", "--dir",
dest="directory", default=current_dir,
help="directory of save the address") p.add_option("-f", "--filename",
dest="filename", default=file_name,
help="filename of screen shots file name")
return p.parse_args() def screen(options):
# 截图
print(os.popen("adb shell screencap /sdcard/{filename}".format(filename=options.filename)).read()) # 截图导出
print(os.popen(r"adb pull /sdcard/{filename} {dir}".format(filename=options.filename,
dir=options.directory)).read())
# 打开截图
print(os.popen(r"start {filename}".format(filename=options.filename)).read())
# 删除截图
print(os.popen("adb shell rm /sdcard/{filename}".format(filename=options.filename))) if __name__ == '__main__':
options, args = option()
# print(options)
# print(args)
screen(options)

screencap.py

  

作者:SaoFox
出处:http://www.cnblogs.com/sao-fox
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。
 
 

Python实现对Android截图的更多相关文章

  1. 基于Python实现对PDF文件的OCR识别

    http://www.jb51.net/article/89955.htm https://pythontips.com/2016/02/25/ocr-on-pdf-files-using-pytho ...

  2. 利用Python实现对Web服务器的目录探测

    今天是一篇提升技能的干货分享,操作性较强,适用于中级水平的小伙伴,文章阅读用时约3分钟. PART 1/Python Python是一种解释型.面向对象.动态数据类型的高级程序设计语言. Python ...

  3. 利用 python 实现对web服务器的目录探测

    一.pythonPython是一种解释型.面向对象.动态数据类型的高级程序设计语言.python 是一门简单易学的语言,并且功能强大也很灵活,在渗透测试中的应用广泛,让我们一起打造属于自己的渗透测试工 ...

  4. 通过Python实现对SQL Server 数据文件大小的监控告警

    1.需求背景 系统程序突然报错,报错信息如下: The transaction log for database '@dbname' is full. To find out why space in ...

  5. Python实现对CSV文件的读写功能

    我们要处理csv文件,首先要的导入csv模块 import csv #读取csv文件def readCsv(path): #传入变量csv文件的路径 list=[] #定义一个空列表 with ope ...

  6. python实现对excel数据进行修改/添加

    import osimport xlrdfrom xlutils.copy import copydef base_dir(filename=None): return os.path.join(os ...

  7. Python实现对excel的操作

    1.操作excel使用第三方库openpyxl安装:pip install openpyxy引入:import openpyxl2.常用简单操作1)打开excel文件获取工作簿wb = openpyx ...

  8. 用 Python 脚本实现对 Linux 服务器的监控

    目前 Linux 下有一些使用 Python 语言编写的 Linux 系统监控工具 比如 inotify-sync(文件系统安全监控软件).glances(资源监控工具)在实际工作中,Linux 系统 ...

  9. 用 Python 脚本实现对 Linux 服务器的网卡流量监控

    *这篇文章网上已经有相关代码,为了加深印象,我做了相关批注,希望对朋友们有帮助 工作原理:基于/proc文件系统 Linux 系统为管理员提供了非常好的方法,使其可以在系统运行时更改内核,而不需要重新 ...

随机推荐

  1. LA 3135 阿格斯(优先队列)

    https://vjudge.net/problem/UVALive-3135 题意: 你的任务是编写一个称为Argus的系统.该系统支持一个Register的命令 Register Q_num Pe ...

  2. codevs 1082 线段树练习 3 区间更新+延迟标记

    题目描述 Description 给你N个数,有两种操作: 1:给区间[a,b]的所有数增加X 2:询问区间[a,b]的数的和. 输入描述 Input Description 第一行一个正整数n,接下 ...

  3. 转载:Java 内存区域和GC机制

    原文链接:http://www.cnblogs.com/hnrainll/archive/2013/11/06/3410042.html 目录 Java垃圾回收概况 Java内存区域 Java对象的访 ...

  4. 解决RDP连接不上

    1,开始->运行 regedit 删除注册表项目:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft, 删除MSLicensing.2,开始--运行 mstsc /v:( ...

  5. 使用CMake在Linux下编译tinyxml静态库

    环境:CentOS6.6+tinyxml_2_6_21.下载并解压tinyxml_2_6_2.zip unzip tinyxml_2_6_2.zip 2.在tinyxml文件夹里创建一个CMakeLi ...

  6. yii 第一步

    第一步:index.php // include Yii bootstrap filerequire_once(dirname(__FILE__).'/../../framework/yii.php' ...

  7. 使用erlang实现简单的二进制通信协议

    最近实现的一种简单的协议以及工具,主要用于客户端服务端通讯传输二进制数据时,协议的解包与封包,具体如下:首先定义协议的格式,主要由三部分组成:        数据长度(数据部分长度+协议号长度):4个 ...

  8. 『OpenCV3』Harris角点特征_API调用及python手动实现

    一.OpenCV接口调用示意 介绍了OpenCV3中提取图像角点特征的函数: # coding=utf- import cv2 import numpy as np '''Harris算法角点特征提取 ...

  9. Mac下找不到gl.pc和glu.pc

    在用pkg-config可以用来自动查找对应库的include和lib文件,方便编译.它主要通过PKG_CONFIG_PATH和/usr/lib/pkgconfig目录下的.pc文件进行自动配置.在c ...

  10. Sunday算法[原创]

    一.应用: 同样的,sunday算法也是在一个字符串中查找另一个字符串出现的首地址,是Daniel M.Sunday于1990年提出的,从销量上讲,Sunday>BM>KMP,是这类问题的 ...