想开发网页爬虫,发现被反爬了?想对 App 抓包,发现数据被加密了?不要担心,这里可以为你解决。

全面超越Appium,使用Airtest超快速开发App爬虫

想开发网页爬虫,发现被反爬了?想对 App 抓包,发现数据被加密了?不要担心,使用 Airtest 开发 App 爬虫,只要人眼能看到,你就能抓到,最快只需要2分钟,兼容 Unity3D、Cocos2dx-*、Android 原生 App、iOS App、Windows Mobile……。

Airtest是网易开发的手机UI界面自动化测试工具,它原本的目的是通过所见即所得,截图点击等等功能,简化手机App图形界面测试代码编写工作。

安装和使用

安装Airtest

从Airtest官网:airtest.netease.com下载Airtest,然后像安装普通软件一样安装即可。安装过程没有什么需要特别说明的地方。Airtest已经帮你打包好了开发需要的全部环境,所以安装完成Airtest以后就能够直接使用了。

Airtest运行以后的界面如下图所示。

连接手机

以Android手机为例,由于Airtest会通过adb命令安装两个辅助App到手机上,再用adb命令通过控制这两个辅助App进而控制手机,因此首先需要确保手机的adb调试功能是打开的,并允许通过adb命令安装App到手机上。

启动Airtest以后,把Android手机连接到电脑上,点击下图方框中的刷新 ADB

此时在Airtest界面右上角应该能够看到手机的信息,如下图所示。

点击connect按钮,此时可以在界面上看到手机的界面,并且当你手动操作手机屏幕时,Airtest中的手机画面实时更新。如下图所示。

对于某些手机,例如vivo,在第一次使用Airtest时,请注意手机上将会弹出提示,询问你是否允许安装App,此时需要点击允许按钮。并且打开开发者模式,这里vivo开发者打开后图如下:

打开美团

先通过一个简单的例子,来看看如何快速上手Airtest,稍后再来详解。

例如我现在想使用电脑控制手机,打开美团。

此时,点击下图中方框框住的touch按钮:

接下来演示完整的打开流程:

这里,我把Airtest分成了A-F6个区域,他们的功能如下:

  • A区:常用操作功能区
  • B区:Python代码编写区
  • C区:运行日志区
  • D区:手机屏幕区
  • E区:App页面布局信息查看区
  • F区:工具栏

A区是常用的基于图像识别的屏幕操作功能,例如:

  • touch: 点击屏幕元素
  • swipe: 滑动屏幕
  • exists: 判断屏幕元素是否存在
  • text: 在输入框中输入文字
  • snashot: 截图
  • ……

一般来说,是点击A区里面的某一个功能,然后在D区屏幕上进行框选操作,B区就会自动生成相应的操作代码。

B区用来显示和编写Python代码。在多数情况下,不需要手动写代码,因为代码会根据你在手机屏幕上面的操作自动生成。只有一些需要特别定制化的动作才需要修改代码。

D区显示了手机屏幕,当你操作手机真机时,这个屏幕会实时刷新。你也可以直接在D区屏幕上使用鼠标操作手机,你的操作动作会被自动在真机上执行。

F区是一些常用工具,从左到右,依次为:

  1. 新建项目
  2. 打开项目
  3. 保存项目
  4. 运行代码
  5. 停止代码
  6. 查看运行报告

后续。。。。。

原文地址:https://www.cnblogs.com/542684416-qq/p/10916445.html

时间: 2024-12-17 05:13:28

想开发网页爬虫,发现被反爬了?想对 App 抓包,发现数据被加密了?不要担心,这里可以为你解决。的相关文章

wireshark抓包发现1506字节包

以太网的MTU最大为1506字节,但是抓包的时候我却发现大量的1506的字节包,这让我百思不得其解 1,TCP的MTU是哪里来的? TCP的MTU一般使用默认值,当然,程序员也可以自己设定.我们这里讨论的是以太网的MTU值,以太网的MTU值为1500. 2,以太网的MTU为1500,为什么包长度达到了1506? 以太网的最大传输单元是1500,但这个长度是不包含链路层的,这个值是链路层针对网络层的设计,我们可以看看链路层的帧结构 这里我们讨论最常见的以太网帧封装结构,网络上99%以上都是以太网帧

app抓包,根据接口开发web端

平时喜欢看某个做视频的app,最近app有bug,看着看着就会闪退,回到首页,反馈给官方,好久也不处理,于是自己抓包app的接口,直接用php开发个web版本的自己用.首先抓包过程就不说了,我的另一篇博客有详细介绍:Charles抓包https,http先看一下web的界面:其实就两个页面,非常简单,下面贴一下代码,链接都去掉了,以免被坏人利用: <?php ini_set('date.timezone','Asia/Shanghai'); header("Content-Type:tex

Python开发简单爬虫(二)---爬取百度百科页面数据

一.开发爬虫的步骤 1.确定目标抓取策略: 打开目标页面,通过右键审查元素确定网页的url格式.数据格式.和网页编码形式. ①先看url的格式, F12观察一下链接的形式;② 再看目标文本信息的标签格式, 比如文本数据为div class="xxx", ③ 容易看到编码为utf-8 2.分析目标 目标: 百度百科python词条 入口页: http://baike.baidu.com/item/Python词条页面url格式:/item/**** 数据格式: 标题: <dd cl

爬虫——Scrapy框架案例一:手机APP抓包

以爬取斗鱼直播上的信息为例: URL地址:http://capi.douyucdn.cn/api/v1/getVerticalRoom?limit=20&offset=0 爬取字段:房间ID.房间名.图片链接.存储在本地的图片路径.昵称.在线人数.城市 1.items.py # -*- coding: utf-8 -*- # Define here the models for your scraped items # # See documentation in: # http://doc.s

Charles 抓包发现自动跳转为https 问题梳理

今天遇到个有点意思的问题.特此记录. 业务场景: 做了一个页面,但是对外是挂载在京东主站上.如:www.jd.com/yifu/123456.html. 现场情况: 在本地/测试环境/预发环境中,每次点击页面之前,都要删除浏览器缓存,否则是死链. 背景知识: Chrome浏览器会自动记录http->https的跳转.比如访问http://www.jd.com 自动跳转成了 https//www.jd.com ,那么下次浏览器就会直接使用https.这里的自动跳转是基于域名的,也就是同一域名下有某

python爬虫--cookie反爬处理

Cookies的处理 作用 保存客户端的相关状态 在爬虫中如果遇到了cookie的反爬如何处理? 手动处理 在抓包工具中捕获cookie,将其封装在headers中 应用场景:cookie没有有效时长且不是动态变化 自动处理 使用session机制 使用场景:动态变化的cookie session对象:该对象和requests模块用法几乎一致.如果在请求的过程中产生了cookie,如果该请求使用session发起的,则cookie会被自动存储到session中. 案例 爬取雪球网中的新闻资讯数据

Python 开发轻量级爬虫08

Python 开发轻量级爬虫 (imooc总结08--爬虫实例--分析目标) 怎么开发一个爬虫?开发一个爬虫包含哪些步骤呢? 1.确定要抓取得目标,即抓取哪些网站的哪些网页的哪部分数据. 本实例确定抓取Python百度百科词条页面以及相关词条页面的标题和简介. 2.分析这个目标,即需要确定抓取这些网站数据的策略. 有三部分需要分析. 1)需要分析这些目标页面的url格式,用来限定我们要抓取页面的范围. 如果这个范围不进行限定的话,我们的爬虫就会抓取互联网上很多不相关的网页,造成资源的浪费. 2)

爬虫之抓包教程

在初学的爬虫过程中,很多人还不知道如何抓包,怎样子抓包才能获取到所需要的信息.为了纪念[宏彦获水]成语初次面世,特地用[百度搜索]写下一篇作者常用工具的抓包教程,以供大家参考. 抓包过程中,一般是 get 的抓包和 post 抓包,其中 get 抓包分为:普通get.带参数get.json抓包,其中 json抓包是重中之重.而post一般是登陆所用,当然也有可能是传参,这里只讲登陆的post,传参的和登陆的情况一致. 软件准备 作者用的抓包软件为: firefox 32.0 浏览器 firebu

爬虫框架Scrapy之手机抓包案例

手机App抓包爬虫 1. items.py class DouyuspiderItem(scrapy.Item): name = scrapy.Field()# 存储照片的名字 imagesUrls = scrapy.Field()# 照片的url路径 imagesPath = scrapy.Field()# 照片保存在本地的路径 2. spiders/douyu.py import scrapy import json from douyuSpider.items import Douyusp