Python + Appium 获取当前屏幕的截图方法的封装

使用方法:get_screenshot_as_file(filename),来自于seleniumwebdriver emotewebdiver.py

def take_screenShot(self,name = "takeShot"):
        '''
        method explain:获取当前屏幕的截图
        parameter explain:【name】 截图的名称
        Usage:
            device.take_screenShot(u"个人主页")   #实际截图保存的结果为:2018-01-13_17_10_58_个人主页.png
        '''
        day = time.strftime("%Y-%m-%d",time.localtime(time.time()))
        fq = "..\screenShots\"+day  
        #fq =os.getcwd()[:-4] +'screenShots\'+day    根据获取的路径,然后截取路径保存到自己想存放的目录下
        tm = time.strftime("%Y-%m-%d_%H_%M_%S",time.localtime(time.time()))
        type = '.png'
        filename = ""
        if os.path.exists(fq):
            filename = fq+"\"+tm+"_"+name+type
        else:
            os.makedirs(fq)
            filename = fq+"\"+tm+"_"+name+type
         #c = os.getcwd()
         #r"\".join(c.split("\"))     #此2行注销实现的功能为将路径中的替换为\
        self.driver.get_screenshot_as_file(filename)

注意点:

  1、给定截图的名称为中文,则需添加u,如:device.take_screenShot(u"个人主页"),否则截图保存的文件名称乱;

  2、若给定的截图名称为英文,则不需添加U

原文地址:https://www.cnblogs.com/syw20170419/p/8280017.html