背景:

测试过程中,总是需要对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. sliva数据库简介--转载

    sliva rRNA数据库(http://www.arb-silva.de/)用来检查和比对RNA序列,既可以针对16S/18S,SSU,也可以针对23S/28S, LSU,包括了Bacteria, ...

  2. python 本地化 local

    locale 模块提供了 C 本地化( localization )函数的接口, 如 Example 8-1 所示. 同时提供相关函数, 实现基于当前 locale 设置的数字, 字符串转换. (而 ...

  3. ros 录制

    rosbag record cd ~/bagfiles # 存放.bag数据的路径 1. 录制所有 topic rosbag record -a # 录制所有topic 2. 录制指定的 topic ...

  4. Docker Container的概述

    ·通过Image创建(copy) ·在Image layer之上建立一个container layer(可读写) ·类比对象:类和实例(Image相当于抽象的一个类,Container相当于实例化的一 ...

  5. iOS开发中各种关键字的区别

    1.一些概念 1.浅Copy:指针的复制,只是多了一个指向这块内存的指针,共用一块内存. 深Copy:内存的复制,两块内存是完全不同的, 也就是两个对象指针分别指向不同的内存,互不干涉. 2.atom ...

  6. 【Golang】格式化JSON字符串,方便查看

    分别介绍golang及Python格式化接口返回JSON数据的方法,及Python json.dumps方法出现NameError: name 'true' is not defined原因解析及解决 ...

  7. elementUI和iview兼容么

    听说iview的作者居然是91年的,我要赶快加油了. https://zhuanlan.zhihu.com/p/25739512

  8. windows7 asp.net发布IIS 拒绝访问 解决方法

    在windows7中打开DNN网站有以下问题: CS0016: 未能写入输出文件“c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP ...

  9. R—读取数据(导入csv,txt,excel文件)

    导入CSV.TXT文件 read.table函数:read.table函数以数据框的格式读入数据,所以适合读取混合模式的数据,但是要求每列的数据数据类型相同. read.table读取数据非常方便,通 ...

  10. [.NET开发] NPOI导出

    //导出全部 expertPara = GetExpetPara(); expertPara.BeginIndex = pager.CurrentPageIndex; expertPara.EndIn ...