python滑动手机屏幕_appium+python自动化24-滑动方法封装(swipe)
swipe介绍
1.查看源码语法,起点和终点四个坐标参数,duration是滑动屏幕持续的时间,时间越短速度越快。默认为None可不填,一般设置500-1000毫秒比较合适。
swipe(self, start_x, start_y, end_x, end_y, duration=None)
Swipe from one point to another point, for an optional duration.
从一个点滑动到另外一个点,duration是持续时间
:Args:
- start_x - 开始滑动的x坐标
- start_y - 开始滑动的y坐标
- end_x - 结束点x坐标
- end_y - 结束点y坐标
- duration - 持续时间,单位毫秒
:Usage:
driver.swipe(100, 100, 100, 400)
2.手机从左上角开始为0,横着的是x轴,竖着的是y轴
获取坐标
1.由于每个手机屏幕的分辨率不一样,所以同一个元素在不同手机上的坐标也是不一样的,滑动的时候坐标不能写死了。可以先获取屏幕的宽和高,再通过比例去计算。
# coding:utf-8
from appium import webdriver
desired_caps = {
'platformName': 'Android',
'deviceName': '30d4e606',
'platformVersion': '4.4.2',
# apk包名
'appPackage': 'com.taobao.taobao',
# apk的launcherActivity
'appActivity': 'com.taobao.tao.welcome.Welcome'
}
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
# 获取屏幕的size
size = driver.get_window_size()
print(size)
# 屏幕宽度width
print(size['width'])
# 屏幕高度width
print(size['height'])
2.运行结果:
{u'width': 720, u'height': 1280}
720
1280
封装滑动方法
1.把上下左右四种常用的滑动方法封装,这样以后想滑动屏幕时候就能直接调用了
参数1:driver
参数2:t是持续时间
参数3:滑动次数
2.案例参考
# coding:utf-8
from appium import webdriver
from time import sleep
desired_caps = {
'platformName': 'Android',
'deviceName': '30d4e606',
'platformVersion': '4.4.2',
# apk包名
'appPackage': 'com.taobao.taobao',
# apk的launcherActivity
'appActivity': 'com.taobao.tao.welcome.Welcome'
}
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
def swipeUp(driver, t=500, n=1):
'''向上滑动屏幕'''
l = driver.get_window_size()
x1 = l['width'] * 0.5 # x坐标
y1 = l['height'] * 0.75 # 起始y坐标
y2 = l['height'] * 0.25 # 终点y坐标
for i in range(n):
driver.swipe(x1, y1, x1, y2, t)
def swipeDown(driver, t=500, n=1):
'''向下滑动屏幕'''
l = driver.get_window_size()
x1 = l['width'] * 0.5 # x坐标
y1 = l['height'] * 0.25 # 起始y坐标
y2 = l['height'] * 0.75 # 终点y坐标
for i in range(n):
driver.swipe(x1, y1, x1, y2,t)
def swipLeft(driver, t=500, n=1):
'''向左滑动屏幕'''
l = driver.get_window_size()
x1 = l['width'] * 0.75
y1 = l['height'] * 0.5
x2 = l['width'] * 0.25
for i in range(n):
driver.swipe(x1, y1, x2, y1, t)
def swipRight(driver, t=500, n=1):
'''向右滑动屏幕'''
l = driver.get_window_size()
x1 = l['width'] * 0.25
y1 = l['height'] * 0.5
x2 = l['width'] * 0.75
for i in range(n):
driver.swipe(x1, y1, x2, y1, t)
if __name__ == "__main__":
print(driver.get_window_size())
sleep(5)
swipLeft(driver, n=2)
sleep(2)
swipRight(driver, n=2)
在学习过程中有遇到疑问的,可以appium+python QQ群交流:330467341
python滑动手机屏幕_appium+python自动化24-滑动方法封装(swipe)相关推荐
- python控制手机模拟器_Appium+python自动化之连接模拟器并启动淘宝APP(超详解)...
简介 上一篇讲解完模拟器的安装.配置好以后,就好比我们手机已经买好,并且系统已经做好了,就差我们用数据线和电脑连接开始实战了,这篇宏哥就带着小伙伴们和童鞋们趁热打铁,讲解和分享一下如何连接模拟器(电脑 ...
- python控制手机模拟器_Appium+python自动化23-Android夜神模拟器
前言 Android SDK虽然也自带了模拟器,但是那速度会让你怀疑人生,并且不稳定经常卡死异常.夜神模拟器可以说是android模拟器里面的一个神器. 环境安装 2.夜神安卓模拟器(夜神模拟器),是 ...
- 手机写python脚本_手机python在手机里写python脚本控制手机,神!
一说起写代码,大家所想到地就是在电脑键盘上面敲.其实不然,在移动端飞速发展地今天,我们是可以在手机上编写代码的.今天,编玩编学网就给大家科普下手机python的知识,想在手机里面编写python脚本自 ...
- iPhone手机屏幕三种故障及维修方法
我使用Apple手机的朋友经常出现屏幕故障.手机屏幕坏了后,很多人都不知道问题出在哪里.最后,是否要维修. 苹果公司的官方维修点太昂贵,导致许多人受到一些不良企业的打击.现在共享通常出现在手机屏幕上的 ...
- python控制手机屏幕亮度的软件_Python脚本利用adb进行手机控制
Python脚本利用adb进行手机控制 一. adb 相关命令:1. 关闭adb服务:adb kill-server2. 启动adb服务 adb start-server3. 查询当前运行的所有设备 ...
- python控制手机屏幕亮度的软件_使用Python脚本更改显示器亮度
前言 不管在电脑屏幕前办公还是娱乐,环境光线在变化,看的东西也在变化.显示器的亮度也应该及时调整,白天亮一些,晚上暗一些,打游戏亮一些,看文档暗一些. 如果是笔记本,可以在Win10的任务栏最右边的通 ...
- python ADB 手机屏幕 控制脚本 刷粉 刷赞 脚本
本系列专栏见:高质量文章导航_GZVIMMY的博客 Python大家都很熟悉,人生苦短,我用Python. ADB(Android Debug Bridge)则是一种通过电脑调试控制安卓设备的技术,我 ...
- python模拟手机按键_Appium+Python-模拟手机按键操作
一.前言 移动端自动化的话,有时需要模拟手机按键操作,比如手机系统自带的回车.返回等,所以要模拟按键操作得用到 keyevent方法,参数如下: keyevent(keycode, metastate ...
- python坐标定位手机元素_Appium+Python之元素定位和操作
一.常用识别元素的工具 uiautomatorviewer:Android SDK自带的一个工具,在tools目录下 二.元素定位 1.格式:find_element_by_定位方式(value) 通 ...
最新文章
- HTTP与HTTPS区别/HTTPS知识点
- python算法书籍-你也能看得懂的Python算法书
- Could not autowire field: private javax.servlet.http.HttpServletRequest
- 由浅入深理解Java线程池及线程池的如何使用
- PCA 主成分分析 用Excel一步步演算过程详解
- Android更新平台架构方案
- pytorch中resnet_ResNet代码详解
- 无线对讲调度服务器,无线对讲系统解决方案
- Java @Transient 注解使用
- python爬取万方数据库,python下载万方数据库文献
- anaconda tensorflow import PIL 报错的解决方法
- cps linux命令,Linux基本网络及文件传输命令
- 微信公众号图灵机器人开发php,使用图灵机器人api搭建微信聊天机器人php实现,图灵微信聊天机器人...
- 黯然销魂者,惟别而已矣。
- 对于Windows 11备份和还原的探索
- 设计师们都在用的5款有限元分析软件推荐
- DIY 空气质量检测器
- 使用编码器控制步进电机
- MVS学习(一):综述论文阅读记录
- Windows电脑桌面云便签怎么设置已完成效果?