移动端环境搭建


移动端环境搭建

移动端数据简介

移动端爬取数据的背景

随机互联网的发展,数据不仅仅只是存在于PC端。移动端的数据在这几年的占比以及势头发展趋势呈现几何倍数的增长。对于做数据分析、用户画像、市场调研来说仅仅参考PC端的数据是远远不够的。那么于此同时移动的数据就显得尤为的重要

获取移动端数据的作用?

• 数据分析
• 用户画像
• 商业竞争
• 统计系统

UIAutomator的介绍

UIAutomator是google提供的用来做安卓自动化测试的一个java库
UIAutomator的缺陷
• 测试脚本只能用Java语言开发
• 测试脚本要打包成jar包或者apk包上传到设备上才能实现

UIAutomato2的优势

• UI自动化编写采用Python,学习成本低
• UI控件识别有专门的工具 weditor
• 环境搭建简单
• UI自动化脚本运行稳定
项目地址https://github.com/openatx/uiautomator2

UIAutomator2的执行流程

• 在移动设备上安装atx-agent(守护进程),随后atx-agent启动ui2服务(默认7912端口)进行监听
• 在PC端来编写脚本(相当于发送HTTP请求到移动设备的server端)
• 移动设备通过wifi或usb接收到了PC上发来的HTTP请求,执行定制的操作

adb的简介和u2的基本操作

adb的安装与使用

Adb又称Android调试桥,用于通过电脑端与模拟器或者是设备之间的交互的一个工具
Adb client 命令行程序‘adb’用于从shell或脚本中运行adb命令
Adb server adb server 是运行在PC的的一个后台程序
Adbd 程序adbd作为一个后台进程在Android设备或模拟器系统中运行

adb有什么作用?

• 安装卸载apk文件
• 移动设备和PC之间拷贝文件
• 查看设备上安装的应用信息
• 文件管理
• 按键操作

adb如何使用?

把adb的bin目录添加到环境变量当中
在这里插入图片描述

adb devices 查看链接的移动设备
adb kill-server 关闭链接的移动设备
adb install apk文件路径  安装app应用
adb shell pm list packages 查看应用包名
adb uninstall 应用包名 卸载应用

UIAutomator2快速入门

python -m uiautomator2 init  初始化移动设备

Uiautomator-server: 就是谷歌原声的 uiautomator

Atx-agent: uiautomator的守护进程

minicap和minitouch 中2个包是atx-agent增加远程控制功能的依赖
UIAutomator2控制移动设备

u2.connect_wifi('172.17.100.15')  通过wifi
u2.connect_usb('127.0.0.1:62025') 通过usb(手机序列号)
u2.connect_adb_wifi('172.17.100.15:5555') 通过adb wifi

UIAutomato2启动手机app

使用aapt工具进入这个路径输入
aapt dump badging apk的文件名
找到包名
d.app_start('包名')
停止
d.app_stop('包名')

UIAutomator2自动化工具基本操作

d.service('uiautomator').running() uiautomator运行状态
d.service('uiautomator').start() 启动uiautomator
d.service('uiautomator').stop() 停止uiautomator
d.app_install(data='apk地址') 安装app
d.app_current() 获取当前前台app的信息
d.app_stop('包名') 停止当前app
d.app_clear('包名') 清除缓存
d.app_uninstall('包名') 卸载app
d.app_list() 获取所有app的信息
d.app_stop_all() 停止所有app
d.app_uninstall_all() 卸载所有app

weditor的基本操作

什么是Activity?

Activity是Android系统中的四大组件之一,可以用于显示View。Activity是一个与用户交互的系统模块

An activity is a single, focused thing that the user can do. Almost all activities interact with the user, so the Activity class takes care of creating a window for you in which you can place your UI with setContentView(View).

Activity的控件

• TextView 显示文字
• EditText 输入框
• ImageView 显示图片
• Button 按钮
• CheckBox 复选框
• RadioButton 单选按钮

weditor的使用

安装

pip install weditor -i https://pypi.douban.com/simple
在命令行输入 weditor

weditor的界面包括

• 移动设备选择区
• 控件属性区域
• 代码展示区
• 层级关系和结果展示区域

UiSelector和控件定位

定位方式

1 UiSelector
2 Xpath

Andrid基本布局
线性布局  linearLayout
相对布局  RelativelLayout
帧布局    FrameLayout
表格布局  TableLayout
绝对布局  AbsoluteLayout

控件属性

在这里插入图片描述

文本定位的方式

Text 全文本匹配

textContains 文本包含
textMatches 正则表达式
textStartsWith 起始文本

ClassName定位的方式

className classNmae的值
classNameMatches 正则表达式匹配 classNmae的值

资源id进行定位

resourcdId 资源id

混合定位的方式

文本定位 资源id ClassName等可以配合使用来进行定位

坐标点定位法

坐标点定位法分为2种方式 一种是通过原始的坐标点来呈现。一种是通过%号的方式来呈现

xpath定位的方式

d.xpath(‘xpath语句’)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值