返回顶部
首页 > 资讯 > 后端开发 > Python >Python 玩微信跳一跳
  • 340
分享到

Python 玩微信跳一跳

跳一跳Python玩微信 2023-01-31 04:01:31 340人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

写在前头 如果你看完文章,说我没有Mac电脑,只有windows和iphone,怎么办? 好办,使用windows和安卓模拟器也可以实现自动跳一跳。如需帮助请评论留言。 https://wangshub.github.io/ GitHub

写在前头

如果你看完文章,说我没有Mac电脑,只有windows和iphone,怎么办?
好办,使用windows和安卓模拟器也可以实现自动跳一跳。如需帮助请评论留言。

https://wangshub.github.io/

GitHub 项目地址

相关问题

请先查阅一下 issue 区

  • 参数出错请在这里提交:issues/62
  • iOS 相关问题:issues/99 和
    /issues/4
  • ioS 苹果手机操作步骤
  • Android 安卓手机操作步骤
  • 注意:别刷太高,已经有同学遇到分数清零的情况了164
  • 如果有找不到./autojump.png图片的错误,请查阅194
  • 小白用户可以参考一个B站UP主的视频教程微信跳一跳】教你如何不用双手还能霸占排行榜第一名

游戏模式

2017 年 12 月 28 日下午,微信发布了 6.6.1 版本,加入了「小游戏」功能,并提供了官方 DEMO「跳一跳」。

这是一个 2.5D 插画风格的益智游戏,玩家可以通过按压屏幕时间的长短来控制这个「小人」跳跃的距离。可能刚开始上手的时候,因为时间距离之间的关系把握不恰当,只能跳出几个就掉到了台子下面。
玩法类似于《Flappy Bird》

Python 玩微信跳一跳

如果能精确测量出起始和目标点之间测距离,就可以估计按压的时间来精确跳跃?所以花 2 个小时写了一个 Python 脚本进行验证

希望不要把分数刷太高,容易没朋友的。。。

操作规范

考虑到生产环境的规范性,实验与项目之间不受干扰,请尽量用新的虚拟环境来完成实验

MacOS/Win,请使用如下操作开辟新的虚拟环境(不强调表示MacOS/Win相同操作)

  • 下载Anaconda. MacOS:默认安装/Win:注意安装时候勾选配置路径或者之后手动配置,直至cmd后conda关键字有效
  • 查看所有的虚拟环境conda info --envs
  • 使用命令:conda create -n wechat_env python=3,创建名为wechat_env的虚拟环境,且配置Python版本为python3
  • 激活虚拟环境:MacOS: source activate wechat_env/Win:activate wechat_env
  • 安装所需要的包,比如matplotlib等,建议使用conda install package_name来避免虚拟环境包的路径问题

接下来的操作非必须,仅当实验完成后可操作,试验阶段全程在虚拟环境中操作,进入虚拟环境会有前置符号表示如:

(wechat_env) ~/Desktop/wechat_jump_game-master>
  • 退出虚拟环境:MacOS: source deactivate wechat_env / Win: deactivate wecha_env
  • 删除虚拟环境: conda remove -n wechat_env --all

工具介绍

  • Python
  • 手机或模拟器
  • ADB 驱动,可以到这里下载
  • 相关依赖

如果你是iOS + MacOS,请参考下面的配置:

  • 使用真机调试 WDA,参考 iOS 真机如何安装WEBDriverAgent · TesterHome
  • 安装openatx/facebook-wda
  • Python 3

如果你是 Android + MacOS,请参考下面的配置:

  • Python 3
  • 使用brew进行安装 brew cask install android-platfORM-tools
  • 安装完后插入安卓设备且安卓已打开usb调试模式(部分新机型可能需要再另外勾上 允许模拟点击 权限),终端输入 adb devices ,显示如下表明设备已连接
    List of devices attached
    6934dc33    device

如果你是 Android + Windows,请参考下面的配置:

  • Python 3
  • 安装 ADB 后,请在 环境变量 里将 adb 的安装路径保存到 PATH 变量里,确保 adb 命令可以被识别到。
  • Android + MacOS 测试连接

依赖安装

    pip install -r requirements.txt

原理说明

  1. 将手机点击到《跳一跳》小程序界面;
  2. 用 ADB 工具获取当前手机截图,并用 ADB 将截图 pull 上来
    adb shell screencap -p /sdcard/autojump.png
    adb pull /sdcard/autojump.png .
  1. 计算按压时间

    • 手动版:用 Matplotlib 显示截图,用鼠标点击起始点和目标位置,计算像素距离;
    • 自动版:靠棋子的颜色来识别棋子,靠底色和方块的色差来识别棋盘;
  2. 用 ADB 工具点击屏幕蓄力一跳;
    adb shell input swipe x y x y time(ms)

安卓手机操作步骤

  • 安卓手机打开 USB 调试,设置》开发者选项》USB 调试
  • 电脑与手机 USB 线连接,确保执行adb devices可以找到设备 ID
  • 界面转至微信跳一跳游戏,点击开始游戏
  • 运行python wechat_jump_auto.py,如果手机界面显示 USB 授权,请点击确认
  • 请按照你的手机分辨率从./config/文件夹找到相应的配置,拷贝到 *.py 同级目录./config.JSON(如果屏幕分辨率能成功探测,会直接调用 config 目录的配置,不需要复制)

iOS 手机操作步骤

  1. 运行安装好的 WebDriverAgentRunner
  2. 将手机点击到《跳一跳》小程序界面
  3. 运行脚本。有两种模式可供选择:手动辅助跳 和 自动连续跳
    • 手动辅助跳
      • 命令行运行python3 wechat_jump_iOS_py3.py
      • 依次点击弹出的窗口中的起始位置和目标位置,会自动计算距离后起跳
      • 根据起跳的精准情况更改python3 wechat_jump_iOS_py3.py中的time_coefficient参数,直到获得最佳取值
    • 自动连续跳
      • 拷贝./config/iPhone目录下对应的设备配置文件,重命名并替换到./config.json
      • 命令行运行python3 wechat_jump_auto_iOS.py
      • 会自动计算坐标并连续起跳,根据起跳的精准情况更改./config.json 中的press_coefficient参数,直到获得最佳取值

实验结果

Python 玩微信跳一跳

TODO

  • [x] 可以对拉上来的图片进行颜色分割,识别小人和目标中心,这样就不需要手动点击自动弹跳。

事实证明,机器人比人更会玩儿游戏。

--结束END--

本文标题: Python 玩微信跳一跳

本文链接: https://www.lsjlt.com/news/187960.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python 玩微信跳一跳
    写在前头 如果你看完文章,说我没有mac电脑,只有windows和iphone,怎么办? 好办,使用windows和安卓模拟器也可以实现自动跳一跳。如需帮助请评论留言。 https://wangshub.github.io/ GitHub...
    99+
    2023-01-31
    跳一跳 Python 玩微信
  • Java微信跳一跳操作指南
    Java微信跳一跳操作指南,指哪挑哪。本文的思路是通过adb来控制手机进行操作,通过java写一个jframe覆盖在手机屏幕上,用鼠标获取跳的起点和终点,经过试验获取跳的jframe距离和按压时长的关系(线性关系),然后通过adb来根据计算...
    99+
    2023-05-30
  • C++OpenCV模拟实现微信跳一跳
    目录前提精要:实机演示Gif:思路:获取小黑人的位置:获取终点的位置:需要自定义的:完整项目:项目结构pch.hmain.cpp 前提精要: 本程序参考了大量的大佬佬的代码,在此基础...
    99+
    2024-04-02
  • Java如何实现微信跳一跳辅助
    这篇文章主要介绍Java如何实现微信跳一跳辅助,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!环境配置及相关说明:1)、Windows系统,本人win102)、AVA环境安装,JDK7以上即可3)、安卓手机一部、数据线...
    99+
    2023-05-30
  • Three.js如何实现一个微信跳一跳游戏
    这篇文章给大家分享的是有关Three.js如何实现一个微信跳一跳游戏的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。效果如下: 由于是第一次尝试写游戏, 也不知道套路对不对, 大...
    99+
    2024-04-02
  • C++ OpenCV如何模拟实现微信跳一跳
    小编给大家分享一下C++ OpenCV如何模拟实现微信跳一跳,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!实机演示Gif:思路:获取小黑人的位置,获得目标方块的位置,计算两者的距离,从而计算粗按压屏幕的时间是多少...
    99+
    2023-06-22
  • 微信跳一跳小程序游戏如何开发
    本篇内容主要讲解“微信跳一跳小程序游戏如何开发”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“微信跳一跳小程序游戏如何开发”吧!  小游戏只有以下两个必要文件:  game.js 小游戏主程序入口...
    99+
    2023-06-26
  • 用python实现跳一跳
    下面是一个简单的 Python 实现跳一跳游戏的示例代码:```pythonimport cv2import numpy as np...
    99+
    2023-08-29
    python
  • python怎么实现跳一跳
    要实现跳一跳游戏,可以使用Python的图像识别库和模拟点击操作来实现。下面是一个简单的示例:1. 安装必要的库:```python...
    99+
    2023-08-22
    python
  • php版 短信跳转微信小程序
    实现这功能首先,小程序端添加业务域名  php代码 ...
    99+
    2023-10-10
    php 微信小程序 开发语言
  • H5跳转微信小程序,通过获取URL Scheme,实现短信跳转小程序,微信跳转小程序,邮件跳转小程序,外部链接跳转小程序
    H5链接跳转小程序有2种方式: 第一种:通过微信官方提供的标签wx-open-launch-weapp,打开小程序 第二种:通过获取URL Scheme实现链接跳转小程序 一、wx-open...
    99+
    2023-10-21
    微信小程序 小程序 微信
  • 微信小程序页面跳转方式+跳转小程序
    一. 跳转页面方法 1.跳转到 tabBar 页面 wx.switchTab({ url: '/index'}) 2.跳转到其他页面(非tabBar页) //redirectTo方法(会关闭当前页面...
    99+
    2023-09-28
    小程序 微信小程序
  • Python如何搭建跳一跳小程序
    这篇文章给大家分享的是有关Python如何搭建跳一跳小程序的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。  1、安装Python,我用的是Python3.6.4,具体网址和安装大家百度一下即可,这个步骤比较简单这...
    99+
    2023-06-26
  • 微信扫码跳转到微信小程序指定页面
    项目场景: 用户想通过在微信上扫描实验室二维码直接进入小程序申请加入实验室 怎么解决 首先我们需要在微信公众平台的开发管理——>开发设置,找到(扫普通链接二维码打开小程序),点击添加,会出现下面的页面,配置好之后点击保存就行了 填写页...
    99+
    2023-08-17
    微信小程序 微信 小程序 前端
  • php 跳转到微信浏览器打开
    随着移动互联网的日益发展,微信成为了一个不可或缺的社交和生活工具。在开发网站或者应用程序的时候,很多时候需要将页面跳转到微信浏览器中打开。本文将介绍如何使用PHP将页面跳转到微信浏览器中打开。首先,我们需要检测用户是否正在使用微信浏览器访问...
    99+
    2023-05-24
  • 企业微信内部跳转小程序
    企业微信中跳转小程序 企业微信官方文档 在企业微信内快速跳转到指定的小程序页面之前需要先调用wx.agentConfig wx.agentConfig({ corpid: '', // 必填,企业微信的corpid,必须与当前登录的企...
    99+
    2023-08-17
    小程序 微信小程序 javascript
  • 微信小程序跳转到视频号
    微信小程序跳转到视频号 前言打开视频号主页前提: 若小程序与视频号的主体相同或为关联主体,可以通过wx.openChannelsUserProfile跳转到视频号主页。主体判断逻辑: 相关api:wx.openChanne...
    99+
    2023-08-17
    微信小程序 小程序打开视频号 小程序跳转视频号 小程序打开视频号直播
  • 域名怎样跳转防封 微信域名跳转防封技术揭秘
    微信域名防封技术_微信防红/防封_微信域名防拦截屏蔽都可以解决我们做推广的,看到下面图,心里是不是有些烦燥呢?是的一个域名,前期广告推广都推了很久,想到要换域名,客户不知道新的域名,之前花的精力、时间、金钱都是打了水漂,现在QQ,微信是大部...
    99+
    2023-06-02
  • 微信小程序跳转H5、小程序、App
    日常开发业务中会遇到微信小程序与H5、其他小程序、App之间的相互跳转,客户对引流用户非常在意。此处粗浅的介绍了微信小程序跳转H5、小程序、App的实现思路。 1、跳转H5 使用微信开放组件 web-...
    99+
    2023-09-24
    小程序 微信小程序 微信
  • 微信公众号跳转小程序方法
    1 公众号需要关联小程序 2 跳转方法:       wx.navigateToMiniProgram(Object object)  打开另一个小程序 wx.navigateToMiniProgram({ appId: '', //...
    99+
    2023-10-23
    小程序 微信 微信小程序
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作