python 遍歷usb設備_python程序員教你寫腳本玩微信跳一跳,只要有耐心,你就是王者!...

溫馨提示:微信已經開始檢測分數異常高的情況了,請大家不要跑太高哦

游戲模式

這是一個 2.5D 插畫風格的益智游戲,玩家可以通過按壓屏幕時間的長短來控制這個「小人」跳躍的距離。可能剛開始上手的時候,因為時間距離之間的關系把握不恰當,只能跳出幾個就掉到了臺子下面。這個游戲玩法類似于《flappy bird》

7e0bac38a835f20b0f9698624fbac526.png

如果能精確測量出起始和目標點之間測距離,就可以估計按壓的時間來精確跳躍?所以花2個小時寫了一個python腳本進行驗證。在公開代碼后,相繼有愛好者添加了圖像識別算法,并連續改進,連續正中紅心40+次

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

工具介紹

  • Python 2.7
  • Android 手機
  • Adb 驅動
  • Python Matplot繪圖

原理說明

  1. 將手機點擊到《跳一跳》小程序界面;
  2. 用Adb 工具獲取當前手機截圖,并用adb將截圖pull上來
adb shell screencap -p /sdcard/1.png    adb pull /sdcard/1.png .
  1. 用matplot顯示截圖(已經圖像識別處理)
  2. 用鼠標點擊起始點和目標位置,計算像素距離 (已經圖像識別處理)
  3. 根據像素距離,計算按壓時間;
  4. 用Adb工具點擊屏幕蓄力一跳;
adb shell input swipe x y x y time

如果你是 iOS:

  1. 運行安裝好的 WebDriverAgentRunner
  2. 將手機點擊到《跳一跳》小程序界面
  3. python3 wechat_jump_iOS_py3.py
  4. 依次點擊起始位置和目標位置,實現蓄力一跳
  5. 打開 python3 wechat_jump_iOS_py3.py,根據蓄力一跳的精準情況更改其中的 time_coefficient,直到獲得最佳取值

步驟

  • 安卓手機打開USB調試,設置》開發者選項》USB調試
  • 電腦與手機USB線連接,確保執行adb devices可以找到設備id
  • 界面轉至微信跳一跳游戲,點擊開始游戲
  • 運行python wechat_junp_auto.py,如果手機界面顯示USB授權,請點擊確認

我的屏幕是1920*1080,距離系數為1.35,如果是別的分辨率,暫時需要修改一下代碼中的距離系數.

實驗結果

只要有耐心,你就是王者

6c382f93a90b4a110bdb0392b802d1d1.png

我的成績

TODO

可以對拉上來的圖片進行顏色分割,識別小人和目標中心點,這樣就不需要手動點擊自動彈跳。事實證明,機器人比人更會玩兒游戲。

結尾

最后多說一句,小編是一名python開發工程師,這里有我自己整理了一套最新的python系統學習教程,包括從基礎的python腳本到web開發、爬蟲、數據分析、數據可視化、機器學習等。想要這些資料的可以關注小編,并在后臺私信小編:“01”即可領取。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/396258.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/396258.shtml
英文地址,請注明出處:http://en.pswp.cn/news/396258.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

一個電腦同時運行 64bit 和 32bit 的eclipse 如何匹配 jdk環境

一個電腦同時運行 64bit 和 32bit 的 eclipse 如何匹配 jdk環境 1 eclipse 分 64bit 和 32bit 兩種. 64bit的eclipse 只能搭配 64bit的 jdk 使用. 32bit的eclipse 只能搭配 32bit的 jdk 使用. 2 電腦上安裝好 32bit 和 64bit 的 jdk ,分別安裝在不同的路徑中. 比如我的3…

基本數據類型(dict)

目錄: 1.字典的簡單介紹 2.字典增刪改查和其他操作 3.字典的嵌套 一.字典的簡單介紹 字典(dict)是python中唯一的一個映射類型,他是以{}括起來的鍵值對組成,在dict中key是唯一的,在保存的時候,根據key類計算出一個地址然后將key-value保存在這個地址中這種算法被稱作hash算法,所…

自學成才翁_僅因為您是自學成才,并不意味著您必須獨自學習。

自學成才翁by Piotr Bakker皮特巴克(Piotr Bakker) 僅因為您是自學成才,并不意味著您必須獨自學習。 (Just because you’re self-taught doesn’t mean you have to learn alone.) I am a self-taught designer with no formal training. No art school, no priva…

java 近似值 循環次數,java題求解

該樓層疑似違規已被系統折疊 隱藏此樓查看此樓public class PAI{public static void main(String[] args){int n 700;//Hello World! pai 3.1401640828900845(n 700)System.out.println("Hello World! pai " getPAI(n));//Hello World! pai 3.1430191863875865…

jq匹配偶數行_jquery怎么實現奇偶行不同背景顏色?

做表格的時候,經常要讓奇偶行顯示不同背景色,一來使表格顯得更美觀,二來使同行數據查找更快捷方便。通常我們是怎么實現的呢?就是在每個tr標簽上加css樣式。代碼如下所示:.odd {background-color:yellow;}.even {backg…

2016/4/19 ①單個文件上傳 ②上傳圖片后 預覽圖片

1&#xff0c;f1.php <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Document</title> </head> <body> <!-- 作業:在網上找上傳圖片預覽的代碼 上傳服務器 再預覽--> <fo…

Android項目里集成Cordova詳解

2019獨角獸企業重金招聘Python工程師標準>>> 一 安裝nodejs二 cmd創建Android項目三 導入工程 運行一下四 調用插件五 Android studio環境下將CordovaLib作為依賴導入六 自定義插件七 java類中的一些問題八 在CordovaActivity中添加原生View組件 九 在Fragment里使用…

facebook移動端框架_2016年所有頂級移動應用均歸Google或Facebook所有

facebook移動端框架Today Nielsen released their report about the most widely used mobile apps in 2016. The top 8 apps were all owned by just two corporations: Google and Facebook.今天&#xff0c;尼爾森發布了有關2016年使用最廣泛的移動應用程序的報告。排名前8的…

php 判斷瀏覽器是ie,js判斷是否是ie瀏覽器

怎么去看瀏覽器的內核等信息 ---- js的全局對象window子屬性navigator.userAgent&#xff0c;這個屬性是包含了瀏覽器信息的相關信息&#xff0c;包括我們需要的瀏覽器內核navigator.userAgent這個值取出來是個字符串&#xff0c;可以通過string的 indexOf方法或者正則匹配來驗…

【JAVA基礎】一:聊聊筆試常見到的 “==、equal” 比較是否相等的內在差別

開始本文之前&#xff0c;先讓我們記住一個口訣&#xff08;這個口訣只針對基礎的類比如String、Integer等&#xff0c;如果是自定義的類&#xff0c;需要看equal的具體實現&#xff09;&#xff1a;equal比較其值&#xff0c; 比較地址 這兩天在走查代碼的時候發現一個童鞋&am…

postgres 退出_postgresql – 如何修復Postgres以便在突然關閉后啟動它?

由于突然斷電,在我的本地機器上運行的PostGres服務器突然關閉.重新啟動后,我嘗試重新啟動postgres,我收到此錯誤&#xff1a;$pg_ctl -D /usr/local / pgsql / data restartpg_ctl: PID file "/usr/local/pgsql/data/postmaster.pid" does not existIs server runnin…

php生成appid,PHP生成騰訊云COS簽名

目標使用 PHP 創建 COS 接口所需要的請求簽名步驟按照官方示例(也許是我笨&#xff0c;我怎么讀都覺得官方文檔結構費勁&#xff0c;示例細節互相不挨著&#xff0c;容易引起歧義)&#xff0c;請求簽名應用在需要身份校驗的場景&#xff0c;即非公有讀權限時。否則在請求API接口…

es6作用域

作用域 一個需要注意的地方是&#xff0c;如果參數默認值是一個變量&#xff0c;則該變量所處的作用域&#xff0c;與其他變量的作用域規則是一樣的&#xff0c;即先是當前函數的作用域&#xff0c;然后才是全局作用域。 var x 1;function f(x, y x) {console.log(y); }f(2) …

java 有參數的構造函數如何注入_Spring5參考指南:依賴注入

依賴注入依賴注入就是在Spring創建Bean的時候&#xff0c;去實例化該Bean構造函數所需的參數&#xff0c;或者通過Setter方法去設置該Bean的屬性。Spring的依賴注入有兩種基于構造函數的依賴注入和基于setter的依賴注入。基于構造函數的依賴注入構造函數的注入是通過構造函數的…

深度學習去燥學習編碼_我們問了15,000個人,他們是誰,以及他們如何學習編碼

深度學習去燥學習編碼More than 15,000 people responded to the 2016 New Coder Survey, granting researchers an unprecedented glimpse into how adults are learning to code.超過15,000人對2016年新編碼器調查做出了回應&#xff0c;使研究人員對成年人如何學習編碼有了前…

CentOS 7 vi編輯命令

用vi打開一個yum文件 vi /usr/bin/yum 按 i 鍵后 進入insert模式&#xff0c;進入insert模式后才能進行修改 修改完成后 按esc鍵進入command模式&#xff0c; 然后:wq 保存文件并退出vi&#xff08;注意先冒號&#xff09; 保存命令 按ESC鍵 跳到命令模式&#xff0c;然后&…

C#學習筆記四: C#3.0自動屬性匿名屬性及擴展方法

前言 這一章算是看這本書最大的收獲了, Lambda表達式讓人用著屢試不爽, C#3.0可謂顛覆了我們的代碼編寫風格. 因為Lambda所需篇幅挺大, 所以先總結C#3.0智能編譯器給我們帶來的諸多好處, 下一遍會單獨介紹Lambda表達式. 這篇主要包括的內容有: 自動屬性,隱式類型,對象集合初始化…

array keys php,php array_keys與array_search的簡單使用

函數說明array_keys():返回數組中所有的鍵名。array_search():在數組中搜索給定的值&#xff0c;如果成功則返回相應的鍵名。//根據一個key返回關聯數組中的另一個key,并且不使用foreach// function array_key_relative(array $array, string $current_key, int $offset)functi…

RESTful服務的第三部分:HATEOAS和Richardson成熟度模型

by Sanchit Gera通過Sanchit Gera RESTful服務的第三部分&#xff1a;HATEOAS和Richardson成熟度模型 (RESTful Services Part III : HATEOAS and The Richardson Maturity Model) In Part I of this series, you learned the very basics of HTTP. We went over common HTTP …