九色国产,午夜在线视频,新黄色网址,九九色综合,天天做夜夜做久久做狠狠,天天躁夜夜躁狠狠躁2021a,久久不卡一区二区三区

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
這么神奇!Python都能打電話了?

其實(shí)跟selenium操作瀏覽器原理類似,這是用appium操作移動設(shè)備的一個(gè)自動化功能,自娛自樂一下啦,主要是通過小案例引出相關(guān)技術(shù),練練手不錯(cuò)的?。ㄎ哪┯懈@叮。?/p>

一、環(huán)境配置

1、安裝 jdk 1.8+ ,并配環(huán)境變量。

2、安裝Android SDK,可以直接下載安裝,也可以通過android-studio里面安裝,安裝好后配環(huán)境變量,配好后cmd后輸入adb執(zhí)行成功則配好。

3、安裝appium 1.8.0,我用的這個(gè)版本,還挺穩(wěn)定,原生和微信H5支持還可以,其他版本試過一些,可能原生支持還行,微信公眾號H5頁面支持不友好。

二、查看元素

sdk安裝好后,找到uiautomatorviewer.bat打開,用來獲取元素id、text等屬性,用于我們定位元素,這點(diǎn)跟selenium那一套基本一致,不過有一點(diǎn)值得注意的是,安卓app里面的id并不是唯一的,這個(gè)跟在web里面有區(qū)別,用id的時(shí)候注意看下是否是唯一元素。

用左上角的工具審查元素,比如*鍵,可以看到id是star,其他按鍵各種元素id查看方式一致。

三、配置信息獲取

1、電腦手機(jī)通過數(shù)據(jù)線連接好,輸入命令adb devices,獲取手機(jī)的設(shè)備識別號。

2、命令行輸入:adb shell dumpsys window windows | findstr "Current"

用來獲取當(dāng)前應(yīng)用的包名和啟動頁。

包名:com.android.contacts

啟動頁:com.android.contacts.activities.TwelveKeyDialer

四、代碼編寫

代碼如下,我這里有相關(guān)引入文件。

import sys
sys.path.insert(0,"C:\\Users\\Administrator\\Desktop\\imooc\\python_call")
from action import Action
from appium import webdriver
action = Action()
# 相關(guān)配置
action.desired_caps['platformName'] = 'Android' # 平臺
action.desired_caps['platformVersion'] = '7.0' # Android版本
action.desired_caps['deviceName'] = 'a20bc6990604' # 設(shè)備號
action.desired_caps['appPackage'] = 'com.android.contacts' # 包名
action.desired_caps['appActivity'] = 'com.android.contacts.activities.TwelveKeyDialer' # 啟動頁
action.desired_caps['unicodeKeyboard'] = True # 使用unicode編碼方式發(fā)送字符串
action.desired_caps['resetKeyboard'] = True # 將鍵盤隱藏起來,默認(rèn)true
action.desired_caps['noReset'] = True # 應(yīng)用狀態(tài)是否需要重置,默認(rèn)true
action.desired_caps['automationName'] = 'Uiautomator2' # 自動化引擎,兼容原生和H5
# 控制遠(yuǎn)程appium
action.driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub", action.desired_caps)
# 點(diǎn)擊事件
action.click_key("id=>one")
action.click_key("id=>five")
action.click_key("id=>two")
action.click_key("id=>three")
action.click_key("id=>six")
action.click_key("id=>two")
action.click_key("id=>eight")
action.click_key("id=>eight")
action.click_key("id=>eight")
action.click_key("id=>star")
action.click_key("id=>star")
action.click_key("id=>call_sim1")

其中click_key是我自定義的方法,比如傳入id=>star后,根據(jù)=>進(jìn)行split切分,前面是id,后面是id值,有些時(shí)候我會用xpath寫法,其實(shí)我下面是在項(xiàng)目中涉及很多變量,很多單獨(dú)維護(hù)了,可能你看起來有點(diǎn)復(fù)雜,其實(shí)跟selenium差不多,點(diǎn)擊方法就是click,找元素就是find_element,然后根據(jù)id找的話,要把id值傳進(jìn)去。

byDict = {
"xpath": By.XPATH,
"id": By.ID,
}
def find_ele(self, loc):
print(loc.split("=>")[0],loc.split("=>")[1])
element = WebDriverWait(self.driver, 30).until(
lambda x: x.find_element(byDict[loc.split("=>")[0]], loc.split("=>")[1]))
print(element)
return element
def click_key(self, loc):
self.find_ele(loc).click()

五、運(yùn)行

啟動appium,以默認(rèn)0.0.0.0:4723啟動即可,然后運(yùn)行python程序,即可看到手機(jī)撥打電話執(zhí)行過程。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Python + Appium 環(huán)境搭建
(4)Android手機(jī)自動化測試實(shí)例詳解
Python Appium開啟Android測試之路
python爬蟲24 | 搞事情了,用 Appium 爬取你的微信朋友圈。
appium+python自動化30-list定位(find_elements)
Appium 定位方法例子(4)
更多類似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服