首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >《跳一跳》小程序,python作弊ios版细节说明

《跳一跳》小程序,python作弊ios版细节说明

作者头像
IT晴天
发布2018-08-20 10:42:43
发布2018-08-20 10:42:43
1.7K0
举报
文章被收录于专栏:ionic3+ionic3+

先前看到这篇文章: 教你用 Python 来玩微信跳一跳(iOS)

然后试着跑一下,结果发现太多坑了,现在把细节补充说明一下:

一、安装WebDriverAgent

WebDriverAgent是Facebook发布的,旨在 iOS 端实现了一个 WebDriver server ,借助这个 server 我们可以远程控制 iOS 设备。你可以实现启动、杀死应用,点击、滚动视图等操作。

功能不止作弊这么玩,其实很强大的,如常用于手机应用自动化测试,具体内容可以参考下文: 基于WebDriverAgent代理服务,实现iOS手机app自动化测试的框架搭建 ATX使用 Python 库 facebook-wda 完成网易云音乐 iOS 客户端的自动化测试 (示例)

步骤如下:
  1. 从Github下载源码:WebDriverAgent
  2. 安装Carthage,有几种安装方式,这选用了brew安装:
代码语言:javascript
复制
brew install carthage
  1. 执行WebDriverAgent源码下的启动脚本:
代码语言:javascript
复制
./Scripts/bootstrap.sh
  1. 修改bundleID: 因为原有ID被占用了,使用自己的开发者账号无法匹配,所以修改ID,且保证不跟其他人的重名,如把前缀facebook.wda替换为woodstream。 修改完成后build源码,如果还无法成功,则打开project.pbxproj文件,搜索facebook.wda并全替换为woodstream再次build。
  2. 选择 WebDriverAgentRunner 用真机Test:

image.png 看到输出打印出IP地址表示成功,否则,多执行几次Test,直到成功为止(记住这个地址,一会要用),如果几次都没成功,则可能手机设置问题,通过手机的IP和端口还不能访问,此时需要将手机的端口转发到Mac上:

代码语言:javascript
复制
brew install imobiledevice
代码语言:javascript
复制
 iproxy 8100 8100

Test时打印出IP地址

二、Python配置

利用facebook-wda这个Python库,通过构造HTTP请求直接跟WebDriverAgent通信。

  1. 安装python mac上默认安装了python2.7.x,所以可以跳过这一步。在终端可输入下述命令验证python是否已安装:
代码语言:javascript
复制
python --version
  1. 下载wechat_jump_gameconfig/iPhone目录下对应你的真机设备文件,复制到当前目录并重命名为config.json,里面参数可能需要微调。
  2. 安装python包管理工具pip
代码语言:javascript
复制
curl -O https://raw.githubusercontent.com/pypa/get-pip/master/get-pip.py
代码语言:javascript
复制
sudo python get-pip.py

也可以把上两命令换为一个:

代码语言:javascript
复制
sudo easy_install pip
  1. 利用pip安装facebook-wda
代码语言:javascript
复制
pip install --pre facebook-wda
  1. 安装PIL,可参考此文: Mac安装PIL模块
代码语言:javascript
复制
xcode-select --install
代码语言:javascript
复制
sudo easy_install -f http://www.pythonware.com/products/pil/ Imaging
  1. wechat_jump_game执行其它依赖安装
代码语言:javascript
复制
sudo pip install -r requirements.txt

此时可能会因为旧版依赖库存在而报错:

如six,原因是Apple预安装的这个six库出于安全原因被设置为sudo也不可以执行操作,所以需要依赖于高版本的库就需要更新six,但是没有six的权限,所以就会报错。

可以选择忽略错误,也可以替换为如下命令强制升级:

代码语言:javascript
复制
sudo pip install -r requirements.txt --upgrade --ignore-installed
  1. 在appstore下载RulerSwift,用于微调像素做参考;
  2. 微信打开《跳一跳》小程序;
  3. 修改wechat_jump_auto_iOS.py。 因为我的环境是python2,所以修改此文件,如果是python3的,则修改对应文件。 搜索wda.Client把括号内容替换为上述Test时的IP地址,如:wda.Client('http://192.168.96.91:8100')
  4. 执行python脚本:
代码语言:javascript
复制
python wechat_jump_auto_iOS.py

至此可以看到小人自动跳跃了。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018.01.08 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、安装WebDriverAgent
    • 步骤如下:
  • 二、Python配置
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档