微信在的小程序在日渐成熟,17年12月28日,微信更新开放了小游戏,推出了跳一跳小游戏,于是掀起了一阵比分高潮。
github大神利用Python 写了一个“辅助”。截图,通过棋子,棋盘颜色计算像素距离。python大法好,真善仁美!好了,废话不闲扯。开始撸吧!
首先事先说明一下,我用的系统是osx系统,iphone。
如果系统不一样 道理也是不一定相同的呦
1.我们首先要有一些环境
① 安装Homebrew
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
在Max OS X 10.11 中,homebrew安装软件时可能会碰到/usr/local目录不可写的权限问题。可以使用下面的命令修复:
sudo chown -R `whoami` /usr/local
②安装carthage
$brew install carthage
一定要安装成功否则后面的语句执行不了
③ 安装node.js,下载node.js(需要 npm)
$brew install node
系统是OS X 10.8或者以上,那么系统自带了Python 2.7。如果你的系统版本低于10.8,请自行备份系统并免费升级到最新的10.9,就可以获得Python 2.7。
或则通过brow安装
$ brew install python
测试安装成功没有 可以通过在终端输入python会有显示版本,可以在这里编写python语句
$python -V
可以查看python版本
④安装XCode
这个比较方便,直接在APPStore中下载就可以了 。
2.安装WDA(WebDriverAgent)
简单一点说吧,WebDriverAgent是一个远程控制iOS设备 web页面的工具。
大体意思就是说我们可以远程控制iOS设备(启动,杀死,点击,滚动等)是一个iOS上一个E2E自动解决方案 英语功底好的可以直接点击这里查看。我们继续开始我们的工作吧 。
①下载 WebDriverAgent
$ git clone https://github.com/facebook/WebDriverAgent
这个会下载到当前电脑根目录
下载成功以后
$ cd WebDriverAgent
运行初始化脚本
$ ./Scripts/bootstrap.sh
脚本会使用Carthage下载所需要的依赖
②打开 --> WebDriverAgent.xcodeproj
这里修改证书
③ 运行测试
选择如图进行编译
选择项目
选择运行设备
开始运行
没有问题的话,手机会出现一个无图标的WebDriverAgent应用,启动之后,马上又返回到桌面。这是很正常的不要奇怪。(第一次启动要信任设备 设置--通用--设备管理),这个时候控制栏界面可以看到设备的IP。
通过控制栏界面给出的IP和端口,加上“/status”合成一个地址。例如http://10.10.137.255:8100/status,然后电脑浏览器打开。如果出现一串JSON输出,说明WDA安装成功了。(status表示链接状态与设备信息,inspector 查看UI的图层,方便写测试脚本用的)。
但是 事情哪有这么简单啊! 国行的手机会有一些限制,FB也不认为这是个bug 所以通过以下方法
- mobiledevice:
# Install
$ brew install mobiledevice
# Start proxy
$ mobiledevice tunnel 8100 8100
- usbmuxd:
# Install
$ brew install usbmuxd
# Start proxy
$ iproxy 8100 8100
第二种比较经常用,成功以后会发现
$ iproxy -h
usage: iproxy LOCAL_TCP_PORT DEVICE_TCP_PORT [UDID]
输入命令
$ iproxy 8100 8100
waiting for connection
这时打开浏览器通过访问http://localhost:8100/status确认WDA是否运行成功。而inspector的地址是http://localhost:8100/inspector, inspector是用来查看UI的图层(测试脚本用的)
3 安装 openatx/facebook-wda
$ pip install --pre facebook-wda
如果安装不成功 安装 pip
$sudo easy_install pip
在安装的时候可能会出现 Permission denied ,这是因为由于El Capitan引入了SIP机制(System Integrity Protection),默认下系统启用SIP系统完整性保护机制,无论是对于硬盘还是运行时的进程限制对系统目录的写操作。所以我我们基于用户的权限来安装模块包显得更加合理。
$ pip install --pre facebook-wda --user -U
4 下载辅助跳一跳
①下载文件
$ git clone https://github.com/wangshub/wechat_jump_game
$ cd wechat_jump_game
②安装Python依赖库
$ pip3 install -r requirements.txt --user -U
③开始执行语句
确定运行,手机打开微信小程序跳一跳 开始 进入界面
拷贝 ./config/iPhone 目录下对应的设备配置文件,重命名并替换到 ./config.json
命令行运行
$python wechat_jump_auto_iOS.py
这个时候 会自动计算坐标并连续起跳,根据起跳的精准情况更改 ./config.json 中的 press_coefficient 参数,直到获得最佳取值