使用python编写android截屏脚本双击运行即可

测试的过程中经常需要截取屏幕,通常的做法是使用手机自带的截屏功能,然后将截屏文件复制出来,这种方法的优点是不需要连接数据线就可截屏,缺点则是生成的截屏文件命名是随机命名的,复制出来也比较麻烦。另一种方法是使用PC端的手机助手类软件。

这里使用python编写一个截屏的脚本,双击运行脚本就OK,截屏成功后会将截屏文件已当前时间命名,并保存在存放脚本的当前路径的screenshot文件夹下:

#!/usr/bin/env python 

import os
import time 

PATH = lambda p: os.path.abspath(p) 

def screenshot():
path = PATH(os.getcwd() + "/screenshot")
timestamp = time.strftime('%Y-%m-%d-%H-%M-%S',time.localtime(time.time()))
os.popen("adb wait-for-device")
os.popen("adb shell screencap -p /data/local/tmp/tmp.png")
if not os.path.isdir(PATH(os.getcwd() + "/screenshot")):
os.makedirs(path)
os.popen("adb pull /data/local/tmp/tmp.png " + PATH(path + "/" + timestamp + ".png"))
os.popen("adb shell rm /data/local/tmp/tmp.png")
print "success" 

if __name__ == "__main__":
screenshot()
(0)

相关推荐

  • Android 实现截屏功能的实例

    Android 实现截屏功能的实例 实现代码: public class ScreenShot { // 获取指定Activity的截屏,保存到png文件 private static Bitmap takeScreenShot(Activity activity) { // View是你需要截图的View View view = activity.getWindow().getDecorView(); view.setDrawingCacheEnabled(true); view.buildD

  • Android编程之截屏实现方法(包括scrollview与listview)

    本文实例讲述了Android编程之截屏实现方法.分享给大家供大家参考,具体如下: public class ScreenShot { // 获取指定Activity的截屏,保存到png文件 public static Bitmap takeScreenShot(Activity activity) { // View是你需要截图的View View view = activity.getWindow().getDecorView(); view.setDrawingCacheEnabled(tr

  • Android 屏幕截屏方法汇总

    1.直接使用getWindow().getDecorView().getRootView() 直接使用getWindow().getDecorView().getRootView()是获取当前屏幕的activity.然而对于系统状态栏的信息是截不了,出现一条空白的.如下图: 主要到没,有一条白色边就是系统状态栏.看一下代码,很简单都加了注释了. //这种方法状态栏是空白,显示不了状态栏的信息 private void saveCurrentImage() { //获取当前屏幕的大小 int wi

  • android截屏功能实现代码

    android开发中通过View的getDrawingCache方法可以达到截屏的目的,只是缺少状态栏! 原始界面 截屏得到的图片 代码实现 1. 添加权限(AndroidManifest.xml文件里) 复制代码 代码如下: <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 2. 添加1个Button(activity_main.xml文件) <RelativeL

  • Android 使用Shell脚本截屏并自动传到电脑上

    Android设备用久了,截屏是个麻烦事.更麻烦的是通过qq传到电脑上,倒腾半天.其实用adb命令就可以截屏,然后写个pull的语句就可以拉到电脑上了.文件名为capture.sh, 内容如下: #! /bin/bash adb shell screencap -p /sdcard/test.png #adb pull /sdcard/test.png ~/Desktop/test.png dir=~/Desktop/ curr=`date "+%Y-%m-%d %H:%M:%S"`

  • Android实现截屏并保存操作功能

    该篇文章是说明在Android手机或平板电脑中如何实现截取当前屏幕的功能,并把截取的屏幕保存到SDCard中的某个目录文件夹下面. 实现的代码如下: /** * 获取和保存当前屏幕的截图 */ private void GetandSaveCurrentImage() { //1.构建Bitmap WindowManager windowManager = getWindowManager(); Display display = windowManager.getDefaultDisplay(

  • 解析android截屏问题

    我是基于android2.3.3系统之上的,想必大家应该知道在android源码下面有个文件叫做screencap吧,位于frameworks\base\services\surfaceflinger\tests\screencap\screencap.cpp,你直接在linux下编译(保存在 /system/bin/test-screencap),然后push到手机上再通过电脑去敲命令test-screencap /mnt/sdcard/scapxx.png就可以实现截屏. 复制代码 代码如下

  • 使用python编写android截屏脚本双击运行即可

    测试的过程中经常需要截取屏幕,通常的做法是使用手机自带的截屏功能,然后将截屏文件复制出来,这种方法的优点是不需要连接数据线就可截屏,缺点则是生成的截屏文件命名是随机命名的,复制出来也比较麻烦.另一种方法是使用PC端的手机助手类软件. 这里使用python编写一个截屏的脚本,双击运行脚本就OK,截屏成功后会将截屏文件已当前时间命名,并保存在存放脚本的当前路径的screenshot文件夹下: #!/usr/bin/env python import os import time PATH = lam

  • Android截屏截图的几种方法总结

    Android截屏 Android截屏的原理:获取具体需要截屏的区域的Bitmap,然后绘制在画布上,保存为图片后进行分享或者其它用途 一.Activity截屏 1.截Activity界面(包含空白的状态栏) /** * 根据指定的Activity截图(带空白的状态栏) * * @param context 要截图的Activity * @return Bitmap */ public static Bitmap shotActivity(Activity context) { View vie

  • Android截屏分享功能

    最近项目需要实现Android截屏分享功能,包括Android截屏获取图片.将图片保存到本地.通知系统相册更新.通过微信.QQ.微博分享截屏图片,本篇文章作为总结回顾.     一.Android截屏获取图片 通过对view进行绘制,得到bitmap,可以对Activity.Fragment进行绘制,也可以对其他的View进行绘制.    1 Activity截图(带空白的状态栏) public Bitmap shotScreen(Activity activity) { View view =

  • Android截屏方案实现原理解析

    Android截屏的原理:获取具体需要截屏的区域的Bitmap,然后绘制在画布上,保存为图片后进行分享或者其它用途 在截屏功能中,有时需要截取全屏的内容,有时需要截取超过一屏的内容(比如:Listview,Scrollview,RecyclerView).下面介绍各种场景获取Bitmap的方法 普通截屏的实现 获取当前Window的DrawingCache的方式,即decorView的DrawingCache /** * shot the current screen ,with the sta

  • Python使用Phantomjs截屏网页的方法

    实例如下所示: #!/usr/bin/python # -*- coding:utf8 -*- from selenium import webdriver import os driver1 = webdriver.PhantomJS(executable_path='/usr/local/bin/phantomjs') driver1.get("http://www.csdn.net") data = driver1.title driver1.save_screenshot('c

  • python 实现的截屏工具

    项目地址 https://github.com/fandesfyf/Jamscreenshot 功能概述 新增了透视裁剪工具(类似于PS里的用法).多边形截图工具.取色器工具.油漆桶工具.背景还原画笔(配合背景橡皮擦使用).支持回退10步操作历史记录.新增一键还原按钮.新增智能选框的开关.画笔等增加透明度支持,在画笔/标记时可以通过按住ctrl键+滚轮快速调整画笔透明度,新增常用颜色到取色按钮(鼠标划过即可显示).固定截屏在屏幕上时可以通过按住ctrl+滚轮快速调节截屏的透明度 效果图 加了一个

  • 浅谈Android截屏和指定View生成截图

    当前页面截图(截取整个屏幕) 截取当前Activity页面的截图,可以通过窗体最底层的decorView进行缓存,然后根据这个缓存对象生成一张图片.有的需要不需要状态栏,也可以指定生成图片的宽高,把状态栏去除. /** * 截取当前窗体的截图,根据[isShowStatusBar]判断是否包含当前窗体的状态栏 * 原理是获取当前窗体decorView的缓存生成图片 */ fun captureWindow(activity: Activity, isShowStatusBar: Boolean)

  • Python编写淘宝秒杀脚本

    目录 添加火狐浏览器插件 安装geckodriver python代码 代码整体思路 使用方法 最近想抢冰墩墩的手办和钥匙圈,但是同志们抢的速度太快了,无奈,还是自己写脚本吧. 添加火狐浏览器插件 Omnibug是一个插件,可以简化web度量实现的开发.检查每个传出请求(由浏览器发送)的模式:如果出现匹配,URL将显示在开发人员工具面板中,并进行解码以显示请求的详细信息. 在火狐浏览器的插件中直接搜索.下载即可 安装geckodriver 在python中使用selenium爬取动态渲染网页,这

  • 用Python编写一个漏洞验证脚本

    目录 前言 requests模块使用技巧 验证结果 单线程poc脚本 使用多线程 颜色标记 添加进度条 多线程poc脚本 总结 前言 我们实战经常会遇到以下几个问题: ​ 1.遇到一个利用步骤十分繁琐的漏洞,中间错一步就无法利用 ​ 2.挖到一个通用漏洞,想要批量刷洞小赚一波,但手动去测试每个网站工作量太大 这个时候编写一个poc脚本将会将会减轻我们很多工作.本文将以编写一个高效通用的poc脚本为目的,学习一些必要的python知识,这周也是拒绝做工具小子努力学习的一周 requests模块使用

随机推荐