亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在Python3中安裝與使用Appium

發布時間:2021-03-24 17:01:21 來源:億速云 閱讀:212 作者:Leah 欄目:開發技術

如何在Python3中安裝與使用Appium?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

一、安裝

appium是繼承selenium自動化思想旨在使手機app操作也能自動化的工具(Mobile App Automation Made Awesome)。

appium可以通過Desktop App和npm兩種方式安裝。Desktop App類似于selenium IDE提供一個圖形界面式操作工具;npm類似于selenium就只能使用命令行。

如果對appium還不太熟悉,推薦使用Desktop App安裝,這樣一些操作我們可以使用Desktop App來輸出代碼,寫代碼時就有個參考。

1.1 安裝Android SDK

要想操作安卓手機需要Android SDK,所以在安裝appium之前先安裝Android SDK。

推薦直接安裝Android Studio然后使用Android Studio安裝SDK(太慢可通過圖中HTTP Proxy設置代理)。

菜單----Tools----SDK Manager,鉤選自己要安裝的版本點擊Apply進行下載即可。

如何在Python3中安裝與使用Appium

Android SDK安裝完成后,新建ANDROID_HOME環境變量,值為上圖Android SDK Location的目錄(我這里是“D:\Language\ASDK”)

如何在Python3中安裝與使用Appium

1.2 通過Desktop App安裝(推薦)

下載地址:https://github.com/appium/appium-desktop/releases

選擇操作系統對應版本下載,Windows直接雙擊安裝即可。

如何在Python3中安裝與使用Appium

1.3 通過npm安裝

1.3.1 安裝nodejs

appium本質是一個nodejs庫所以要先安裝nodejs,然后使用npm安裝。

nodejs下載地址:https://nodejs.org/zh-cn/download/

下載zip包解壓到自己想放的目錄,然后把該目錄加入Path環境變量即可。

1.3.2 安裝appium

npm install -g appium

安裝appium的過程中安裝chromedriver時會連接google網站上去(報錯RequestError: Error: connect ETIMEDOUT 216.58.220.208:443),所以可能你需要參考以下命令設置一下npm代理

# 設置代理
npm config set proxy http://127.0.0.1:1080
npm config set https-proxy http://127.0.0.1:1080

# 如果代理需要用戶名密碼
npm config set proxy http://username:password@127.0.0.1:1080
npm config set https-proxy http://username:password@127.0.0.1:1080

# 注冊npm倉庫
npm config set registry https://registry.npmjs.org

# 刪除代理配置
npm config delete proxy
npm config delete https-proxy

1.3.3 使用appinum-doctor確認環境配置無誤

npm install -g appium-doctor
appium-doctor --android

如何在Python3中安裝與使用Appium

二、手機連接appium

2.1 啟動appium服務

如果是通過npm安裝,appium會被安裝到nodejs目錄下,直接使用appium命令啟動即可

如何在Python3中安裝與使用Appium

我這里使用Desktop App方式安裝,安裝完成后雙擊桌面上的圖標界面如下:

如何在Python3中安裝與使用Appium

我們使用默認配置都不修改,直接點擊“Start Server”按鈕啟動

如何在Python3中安裝與使用Appium

2.2 手機使用數據線連接電腦

使用數據線把手機連接到開啟appium的電腦,開啟usb調試功能。可使用adb命令列出設備確保連接成功

adb devices -l

如何在Python3中安裝與使用Appium

三、 使用示例

下邊以python3+appium打開微信并登錄進行演示。python操作appium是通過向appnium的監聽端口發報文實現的,所以python不用安裝什么appium庫。

3.1 Desktop App打開微信并登錄

如何在Python3中安裝與使用Appium

添加以下四項值,完后點擊“Start Session”。

platformName---設備平臺。填Android或IOS

deviceName----設備名。按上邊adb查出的設備名填寫即可

appPackage----要啟動的app的包名。微信是"com.tencent.mm"

appActivity----要啟動的界面。微信啟動界面是".ui.LauncherUI"

{
 "platformName": "Android",
 "deviceName": "HWEVA",
 "appPackage": "com.tencent.mm",
 "appActivity": ".ui.LauncherUI"
}

如何在Python3中安裝與使用Appium

選擇xml控件,對應部份就會高亮顯示。

如何在Python3中安裝與使用Appium

點擊開始錄制,然后在該appium界面上操作(注意不是自己直接在手機上操作),操作過程就會被記錄下來然后可輸出該過程對應的python代碼

如何在Python3中安裝與使用Appium

操作過程就會被記錄下來,在Recorder下拉選擇語言即可輸出操作對應的代碼

如何在Python3中安裝與使用Appium

3.2 全代碼自動化登錄實現

Desktop App已給出界面內操作的代碼,全代碼自動化主要的其實只是打開該界面的代碼。

首先我們先安裝兩個依賴庫

pip install Appium-Python-Client Selenium

代碼補全如下,Appium-Python-Client繼承自Selenium所以使用方法和selenium是很類似的,更多api操作見:https://github.com/appium/python-client

from appium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

# appium服務監聽地址
server='http://localhost:4723/wd/hub'
# app啟動參數
desired_caps={
 "platformName": "Android",
 "deviceName": "HWEVA",
 "appPackage": "com.tencent.mm",
 "appActivity": ".ui.LauncherUI"
}

# 驅動
driver = webdriver.Remote(server,desired_caps)
wait = WebDriverWait(driver,30)
# 獲取登錄按鈕
login_btn = wait.until(EC.presence_of_element_located((By.ID,"com.tencent.mm:id/drp")))
# 點擊登錄按鈕
login_btn.click()
# 獲取手機號文本框
phone_text = wait.until(EC.presence_of_element_located((By.ID,"com.tencent.mm:id/ji")))
# 填寫手機號文本框
phone_text.send_keys("18888888888")

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

济南市| 林西县| 九寨沟县| 巴马| 壶关县| 南乐县| 大英县| 荔波县| 玉门市| 新营市| 桑日县| 榕江县| 长沙县| 克山县| 刚察县| 贵港市| 兴城市| 平昌县| 新巴尔虎右旗| 浦江县| 得荣县| 伊金霍洛旗| 隆德县| 湘潭市| 水城县| 延庆县| 阿尔山市| 民权县| 西充县| 广宗县| 富锦市| 合肥市| 赣州市| 四会市| 封丘县| 贵港市| 黄石市| 西乌珠穆沁旗| 普陀区| 军事| 古蔺县|