Appium之首次開啟app時許可權彈框問題
阿新 • • 發佈:2020-09-14
新安裝的app應用,首次開啟時會出現許可權彈框(確定/取消許可權),如下:
對於這些許可權彈框,我們也是可以定位到得:
from appium import webdriver from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC desired_caps = { 'autoLaunch': 'True', 'deviceName': 'Honor10.0', 'platformVersion': '10.0', 'platformName': 'Android', 'noReset': 'True', 'appPackage': 'com.fenbi.android.solar', 'appActivity': 'com.fenbi.android.solar.activity.RouterActivity', } driver = webdriver.Remote('127.0.0.1:4723/wd/hub', desired_caps) # 不同意授權,則退出App # loc_disagree = ("id", "com.fenbi.android.solar:id/tv_disagree")# try: # ele = WebDriverWait(driver, 10, 0.5).until(EC.presence_of_element_located(loc_disagree)) # ele.click() # except Exception as e: # raise e # 同意授權,則可一步步進入App loc_agree = ("id", "com.fenbi.android.solar:id/tv_agree") try: ele = WebDriverWait(driver, 10, 0.5).until(EC.presence_of_element_located(loc_agree)) ele.click()except Exception as e: raise e else: loc_permission = ("xpath", "//*[@text='確定']") ele2 = WebDriverWait(driver, 10, 0.5).until(EC.presence_of_element_located(loc_permission)) ele2.click() loc_skip = ("xpath", "//*[@text='跳過']") ele3 = WebDriverWait(driver, 10, 0.5).until(EC.presence_of_element_located(loc_skip)) ele3.click() print("已成功開啟小猿搜題App.")
PS:若存在多個text文字相同的許可權彈框時,則可以for迴圈。