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

使用方法:get_screenshot_as_file(filename),来自于selenium\webdriver\remote\webdiver.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

时间: 2024-11-08 13:17:14

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

获取手机屏幕DisplayMetrics属性方法

首先,有一点需要声明,其实在android中,画布Canvas的高宽其实是屏幕的高宽. 如此一来,获得屏幕高宽的方法就很多了: 1. Java代码 WindowManager windowManager = getWindowManager(); Display display = windowManager.getDefaultDisplay(); screenWidth = display.getWidth(); screenHeight = display.getHeight(); 2.

android获取设备屏幕大小的方法

// 通过WindowManager获取 DisplayMetrics dm = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(dm); System.out.println("heigth : " + dm.heightPixels); System.out.println("width : " + dm.widthPixels); // 通过Resources获取

python动态获取对象的属性和方法

http://blog.csdn.net/kenkywu/article/details/6822220首先通过一个例子来看一下本文中可能用到的对象和相关概念.01     #coding: UTF-802     import sys #  模块,sys指向这个模块对象03     import inspect04     def foo(): pass # 函数,foo指向这个函数对象05      06     class Cat(object): # 类,Cat指向这个类对象07    

python动态获取对象的属性和方法 (转载)

首先通过一个例子来看一下本文中可能用到的对象和相关概念. #coding:utf-8 import sys def foo():pass class Cat(object): def __init__(self, name='Kitty'): self.name = name def sayHi(self): print self.name, 'says Hi!' cat = Cat() print Cat.sayHi print cat.sayHi 有时候我们会碰到这样的需求,需要执行对象的某

Python+Appium 获取 toast 方法的封装

获取toast内容方法封装如下: def get_Toast(self,message): #查找toast值 ''' method explain:查找toast的值,与find_Toast实现方法一样,只是不同的2种写法 parameter explain:[text]查找的toast值 Usage: device.get_Toast('再按一次退出iBer') ''' logging.info("查找toast值---'%s'" %(message)) try: message

python+appium获取app元素属性值

元素的属性我们经常会用到,当定位到某个元素后,有时会需要用到这个元素的text值.className.resource-id.checked等. 一般标准的属性我们都可以通过get_attribute("属性名称")来获取,我们来看看下面截图的元素都是怎么获取的吧.从上到下来看.我们从text开始讲,我们先通过xpath方式定位到这个元素 获取text方法有:虽然有两种方法,但一般都用第一种,因为写法比较简单.知道有第二种方法就好了.获取resource-id值方法: 获取classn

python appium操作手机及app各种方法

在网上看了些,一起整理了下,还是有些不够全,但都比较常用了,先放出来吧: #锁定屏幕时间秒 driver.lock(5) #将APP放置后台 参数时间秒 driver.background_app(5) #收起键盘 driver.hide_keyboard() #启动Activity driver.start_activity('包名', 'activity名') #打开通知栏 driver.open_notifications() #检查应用是否已经安装 参数包名 driver.is_app_

获取appPackage和appActivity(python+appium)

(一般情况下,这两个参数可以让开发提供:如果有某种原因不能获取,而你只有安装包,那么可以通过以下步骤获取) 步骤一: 连接真机或开启安卓模拟器,打开Appium.(前提是python+appium环境是OK的) 步骤二: 在真机或模拟器上打开需要获取appPachage和appActivity的apk 步骤三: 开启日志输出(进入cmd,执行adb logcat>D:/log.txt)--路径自己随意哈 步骤四: 找到你刚输出的日志,打开日志,ctrl+f搜索下 Displayed,就能看到你需

python 动态获取当前运行的类名和函数名的方法

一.使用内置方法和修饰器方法获取类名.函数名 python中获取函数名的情况分为内部.外部,从外部的情况好获取,使用指向函数的对象,然后用__name__属性 复制代码代码如下: def a():passa.__name__ 除此之外还可以: 复制代码代码如下: getattr(a,'__name__') 尽管有些脱裤子放屁,总之,从外部获取的方法是非常灵活的. 有些同学需要从函数内部获取函数本身的名字,就需要用些技巧了.1.使用sys模块的方法: 复制代码代码如下: def a():print