Python Appium 模拟人为操作获取app数据
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
- 前言
- 一、appium是什么?
- 二、使用步骤
- 1.准备环境
- 2.实现思路
- 3.项目实现
- 总结
前言
用appium 模拟人滑动操作来获取app数据来避免经常换ip的情况,缺点是获取数据的速度会相对较慢,本文就介绍了appium获取数据内容。
一、appium是什么?
1,appium是开源的移动端自动化测试框架;
2,appium可以测试原生的、混合的、以及移动端的web项目;
3,appium可以测试ios,android应用(当然了,还有firefox os);
4,appium是跨平台的,可以用在ios,windows以及linux桌面系统上;
二、使用步骤
1.准备环境
Appium Server GUI 1.22.3-4
Appium Inspector 2022.5.4
夜神模拟器 使用的安卓系统是5.1.1
安卓系统要打开开发者模式,开启USB调试
2.实现思路
- 获取数据
通过Appium来操作模拟器来获取数据,用Appium Inspector,我们可以获取到app内的数据的class,id,xpath等,来定位元素的中的数据。
- 判断元素
通过这个方式只能获取到屏幕上显示的内容,所以要通过方法来判断元素是存在代码如下
代码如下:
from selenium.common.exceptions import NoSuchElementExceptiondef isElementPresent(by, value):try:driver.find_element(by=by, value=value)except NoSuchElementException:# 打印异常信息# print(NoSuchElementException)# 发生异常,说明页面中未找到该元素,返回Falsereturn Falseelse:# 无异常,说明在页面中找到了该元素,返回Truereturn True
- 模拟滑动
模拟人为在滑动app内的内容,通过按住来获取下面产生的新数据,想要滑动后没有产生滑动惯性,就只能通过按下滑动后弹起松手,
代码如下:
from appium.webdriver.common.touch_action import TouchAction
# 获取鼠标的位置
def get_size():x = driver.get_window_size()['width']y = driver.get_window_size()['height']return(x,y)l = get_size()# 取宽的一半x1 = int(l[0]*0.5)# 从下面开始滑动y1 = int(l[1]*0.8)# 到上面的一个位置停止y2 = int(l[1]*0.25)
action.long_press(x=x1 ,y=y1,duration=2000).move_to(x=x1,y=y2).release().perform()
3.项目实现
总结
以上就是今天要讲的内容,本文简单介绍了appium的使用,仅供学习交流使用
Python Appium 模拟人为操作获取app数据相关推荐
- 「docker实战篇」python的docker-抖音appium模拟滑动操作(22)
原创文章,欢迎转载.转载请注明:转载自IT人故事会,谢谢! 原文链接地址:「docker实战篇」python的docker-抖音appium模拟滑动操作(22) 上次代码写到了可以通过接口获取粉丝的数 ...
- python使用pandas通过聚合获取时序数据的最后一个指标数据(例如长度指标、时间指标)生成标签并与原表连接(join)进行不同标签特征的可视化分析
python使用pandas通过聚合获取时序数据的最后一个指标数据(例如长度指标.时间指标)生成标签并与原表连接(join)进行不同标签特征的可视化分析 目录
- python 模拟用户点击浏览器_使用python进行模拟浏览器操作
使用python完成模拟浏览器操作主要是使用selenium来模拟浏览器,当然还要带上浏览器的驱动比如chromedriver.exe的驱动. 一般使用selenium进行模拟操作需要注意引入一下几个 ...
- 淘宝H5接口获取app数据6.0格式
淘宝H5接口获取app数据6.0格式 公共参数: 名称 类型 必须 描述 key String 是 调用key(必须以GET方式拼接在URL中) secret String 是 调用密钥 api_na ...
- Python爬虫:详解Appium如何爬取手机App数据以及模拟用户操作手势
目录 Appium 模拟操作 屏幕滑动 屏幕点击 屏幕拖动 屏幕拖拽 文本输入 动作链 实战:爬取微博首页信息 Appium 在前文的讲解中,我们学会了如何安装Appium,以及一些基础获取App元素 ...
- Python + Appium框架原生代码实现App自动化测试
Step1:首先介绍下python+appium的框架结构 如下截图所示 (1):apk目录主要放置待测app的apk资源: (2):config目录主要放置配置文件信息,包含:数据库连接配置.UI自 ...
- 使用Appium爬取淘宝App数据
0x01.介绍说明 1.简介 Appium是一个自动化测试开源工具.通过WebDriver协议驱动IOS.Android.Windows Phone平台上的原生应用.混合应用和web应用. 2.App ...
- python爬虫基础(12:app数据爬取)
我们之前一直都在爬取网页数据,但有些企业并没有提供web网页服务,而是提供了app服务,还有些web网页数据的各种反爬虫措施太牛逼,这时候如果从app端爬取兴许更容易得多,本篇就来介绍app数据如何爬 ...
- Python量化交易实战:获取股票数据并做分析处理
量化交易(也称自动化交易)是一种应用数学模型帮助投资者进行判断,并且根据计算机程序发送的指令进行交易的投资方式,它极大地减少了投资者情绪波动的影响.量化交易的主要优势如下: 快速检测 客观.理性 自动 ...
最新文章
- 用集合java字符串第一个单词_Java小程序 输入一个字符串,将每一个单词首字母大写...
- C++Primer 中文版第5版 习题3.26
- Flag counter被博客园禁了的解决方法
- c++ 字符串转数字
- php伪静态不支持中文,wordpress伪静态如何支持中文(目前不支持分类目录中文)...
- c++ mysql 配置文件_C++操作数据库写入到json配置文件中
- yum 安装没有公钥_window 安装docker
- TypeScript 元组(Tuple)
- 如何实现vue前端跨域,proxyTable解决开发环境前端跨域问题
- Python爬虫工程师必备工具 Charles 的安装,以及爬取淘宝网+学UI网
- centos搭建samba服务
- 进销存系统怎么部署到自己服务器,衡水进销存系统部署
- repaire mysql_sql错误:……is marked as crashed and should be repaire
- 路由器开启WDS模式扩展WIFI覆盖范围
- 11_4 PTB数据预处理
- 60种数据可视化图表总结
- vscode中添加好看字体的方法
- NumPy与ndarray简介
- flash---星星闪
- 云台山上初见雪,聆听冬的心语
热门文章
- 什么分数适合学计算机,我是今年高考毕业生分数293,我想问下女孩子学计算机类的专业合适吗?还有我这个分数可以学吗?...
- vs2017的使用以及断点调试
- pip lanms-neo报错问题
- jbpm真是博大精深啊!
- Voronoi图 | 泰森多边形
- 青龙面板--酷狗大字版-2022-05-07
- 【项目实战】select+input实现下拉框左右选择+模糊查询功能
- 意外发现老版本cyberlink decoder存在的问题
- DataGridView的Validating事件注册后删除操作的处理
- Apollo5.0安装