【「探探」爲例】手把手教你用最少的代碼實現各類「機器人」

前言

以前寫了篇文章:【全是乾貨】談談如何學習一項新技能,沒有理論,全是實戰,裏面第五點提到用腳本玩探探,昨天花了一個小時實現了該功能。html

Github:探探機器人,自動根據不一樣妹紙/漢子顏值、年齡等類型,喜歡、忽略,歡迎各位starpython

先看一下實現的結果吧 git

今天要講的主題是:使用 腳本 + WebDriverAgent 實現你本身想要自動操控的任意手機App。github

探探「機器人」實現原理

  1. 設備開啓WebDriverAgent算法

  2. 使用usbmuxd(iTunes與iPhone通訊採用usbmuxusbmuxd提供了USB-TCP的轉換服務),裏面的iproxy將設備端口轉爲本地端口npm

    > brew install usbmuxd
    > iproxy 8100 8100  # 將設備8100端口映射到電腦本地8100端口
    複製代碼
  3. 使用腳本操控手機App,Python爲例(其它語言的實現,可自行去包管理網站找,好比:Nodeapi

    import wda  # https://pypi.org/project/facebook-wda/
    wdaClient = wda.Client()
    tantan_session = wdaClient.session('com.yaymedialabs.putong')  # 括號裏爲探探的Bundle ID,後面會提到怎樣獲取
    wdaClient.screenshot('iphone_screen.png')  # 截取手機屏幕並保存爲iphone_screen.png
    img_face = iphone_screen.crop((34, 215, 1208, 1560))  # 根據座標點截取出Plus 獲取探探裏面的照片
    複製代碼
  4. 上面已經獲取到了探探裏面的照片,此時能夠調用三方api分析照片的數據,例:騰訊的AI Apibash

  5. 根據第4步得到的結果判斷 喜歡、忽略,直接使用上面的tantan_session點擊對應按鈕就行了微信

    tantan_session.tap(780, 2028)  # plus探探喜歡按鈕的座標
    複製代碼

拓展

  1. facebook-wda的功能還有不少,詳情見文檔
  2. tantan-bot只實現了最簡單的功能,其實能夠很容易實現功能增長,好比:第一張截圖識別不到人臉的,可讓腳本點照片進去滑動,檢測到人臉後再判斷喜歡、忽略(不錯過每個妹紙😁)
  3. Python的圖像處理很方便,好比你能夠寫一個腳本實時監控你微信上女友是否給你發新消息了。個人思路:每5秒OCR識別一下聊天窗口,而後取OCR識別出的最後一條數據(非你本身發出的),採用Simhash算法比對與上一次是否差很少,若是相識度不高,證實是新消息,則調用三方聊天機器人API(固然你也能夠扒出你本身的聊天數據用分類算法分個類,當新消息來了在你的語言庫裏去找一條最合適的回給你女友,看着不像是個機器人😀),因而女友就和智能機器人愉快的聊了一夜,把本身都感動哭了🤣
  4. 這個拿來玩遊戲早有實踐,好比:跳一跳
  5. 用這種方式也能夠很方便的實現到時自動搶東西的功能,免得去破協議,幾句代碼搞定。😆
  6. 稍微改一下,70行代碼同樣能夠實現陌陌機器人、抖音機器人等。

補充

  1. Bundle ID獲取:https://offcornerdev.com/bundleid.html
  2. OCR識別:百度 APIGoogle tesseract

最後

下次見面,說不定我就已經實現上面說的東西了哦, 來波關注、star吧,哈哈!session

文章同步發佈:blog

相關文章
相關標籤/搜索