1. 程式人生 > >使用python編寫android截圖指令碼

使用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()