爬蟲自動化控制手機技術選型:uiautomator2 、 appium 和 Airtest 三者對比

發表於2024-03-01

之前接手了一個離職同時的程式碼,使用的是 uiautomator2 來控制手機做微信相關內容的抓取

但是 uiautomator2 的名氣不是很大,當時那個同時拍拍屁股走時,對 uiautomator2 的使用還存在一些問題,比如過段時間不操作手機,電腦和手機之間就會永久斷聯,只能透過重灌 u2 解決(不過這個問題,在我接手後沒有遇到過)

看「崔慶才」的《Python3 網路爬蟲開發實戰 第二版》裡面提到的對手機的自動化框架主要是 appium 和 Airtest ,並沒有提及 uiautomator2,所以多半這個 uiautomator2 是不如 appium 和 Airtest 的

對 uiautomator2 、 appium 和 Airtest 三者的使用經驗,我都是不足的,所以我就先簡單的對比一下三者的 commit 來看看專案的活躍程度,這在一定程度上可以反應專案的可用性

首先看看 appium 的 commits 記錄

圖片.png

再看看 Airtest 的 commits 記錄

圖片.png

再看看 uiautomator2 的 commits 記錄

圖片.png

可以看到,從專案的維護熱情來看,是 appium >> Airtest >> uiautomator2


所以,如果還有新的專案啟動,應該不會選擇 uiautomator2 了,而是會選擇 appium 或者 Airtest

至於 appium、Airtest 之間的差異,建議看「崔慶才」的《Python3 網路爬蟲開發實戰 第二版》,有近 40 頁的內容在講這兩者

相關文章