Python實現對Android截圖
阿新 • • 發佈:2019-01-06
背景:
測試過程中,總是需要對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
1 import os 2 import time 3 from optparse import OptionParser 4 5 6 def option(): 7 # 獲取指令碼所在當前目錄 8 current_dir = os.path.dirname(__file__) 9 # 根據截圖時間生成預設檔名:20170722142831.png 10 file_name = "%s.png" % time.strftime("%Y%m%d%H%M%S", time.localtime()) 11 12 usage = "screencap.py [-d <directory> -f <filename>]screencap.py 作者:SaoFox" 13 description = "Automatic screenshots for android, After in PC display ." 14 15 p = OptionParser(usage=usage, description=description) 16 17 p.add_option("-d", "--dir", 18 dest="directory", default=current_dir, 19 help="directory of save the address") 20 21 p.add_option("-f", "--filename", 22 dest="filename", default=file_name, 23 help="filename of screen shots file name") 24 return p.parse_args() 25 26 27 def screen(options): 28 # 截圖 29 print(os.popen("adb shell screencap /sdcard/{filename}".format(filename=options.filename)).read()) 30 31 # 截圖匯出 32 print(os.popen(r"adb pull /sdcard/{filename} {dir}".format(filename=options.filename, 33 dir=options.directory)).read()) 34 # 開啟截圖 35 print(os.popen(r"start {filename}".format(filename=options.filename)).read()) 36 # 刪除截圖 37 print(os.popen("adb shell rm /sdcard/{filename}".format(filename=options.filename))) 38 39 40 if __name__ == '__main__': 41 options, args = option() 42 # print(options) 43 # print(args) 44 screen(options)
出處:http://www.cnblogs.com/sao-fox
本文版權歸作者和部落格園共有,歡迎轉載,但未經作者同意必須保留此段宣告,且在文章頁面明顯位置給出原文連線。