Appium基础篇14-上下左右滑屏操作swipe方法
本篇来学习webdriver.py下一个滑屏操作,这个方法叫swipe,这个方法只是手机端appium的方法,不是selenium3的方法。在介绍滑屏操作之前,你需要了解如何得到屏幕的高和宽,因为每个手机尺寸不一样。
1.先来看看x,y轴在appium中如何定义
2.左右上下滑屏代码实现
- import os
- import time
- from appium import webdriver
- desired_caps ={ 'platformName': 'Android',
- 'platformVersion': '6.0.1',
- 'deviceName': 'KIW-AL10',
- 'noReset': True,
- 'appPackage': 'com.baidu.searchbox',
- 'appActivity': 'com.baidu.searchbox.SplashActivity',
- 'unicodeKeyboard': True,
- 'resetKeyboard': True
- }
- driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)#启动app
- time.sleep(3) #app启动后等待3秒,方便元素加载完成
- # 打印屏幕高和宽
- print(driver.get_window_size())
- #获取屏幕的高
- x = driver.get_window_size()['width']
- # 获取屏幕宽
- y = driver.get_window_size()['height']
- # 滑屏,大概从屏幕右边2分之一高度,往左侧滑动,滑动后显示的是 热点tab
- driver.swipe(6/7*x, 1/2*y, 1/7*x, 1/2*y, 100)
- time.sleep(4)
- #向右滑动,显示推荐tab 内容,第五个参数,时间设置大一点,否则容易看不到滑动效果
- driver.swipe(1/7*x, 1/2*y, 5/7*x, 1/2*y, 200)
- time.sleep(4)
- #向上滑
- driver.swipe(1/2*x, 1/2*y, 1/2*x, 1/7*y, 200)
- time.sleep(4)
- # 向下滑动
- driver.swipe(1/2*x, 1/7*y, 1/2*x, 6/7*y, 200)
具体代码上面都写了备注,你需要根据上面图,去理解或者比划一下,滑屏开始点坐标和滑屏结束点坐标的位置,这些需要指出,swipe中第五个参数,如果缺省,默认是5毫秒,我建议设置100或者200毫秒,这样才方便观察滑屏,否则滑屏效果可能不到位。