先將Appium的config配置好,再啟用
依次將這些數據填寫



命令行輸入adb shell
然后進入linux底層命令行 輸入 logcat | grep cmp=

然后打開模擬器里的app,然后命令行就會出現運行的app狀態。

這兩個為appPackage和appActivity
多台設備同時使用時服務端需要設置port和bootstrapPort都不一樣

客戶端設置:
"udid":"127.0.0.1:62025", #為客戶端設置udid


#appium
import time
from appium import webdriver
#用來等待元素控件
from selenium.webdriver.support.ui import WebDriverWait
cap = {
"platformName": "Android",
"platformVersion": "5.1.1",
"deviceName": "127.0.0.1:62025",
"udid":"127.0.0.1:62025", #為客戶端設置udid
"appPackage": "com.ss.android.ugc.aweme",
"appActivity": "com.ss.android.ugc.aweme.splash.SplashActivity",
"noReset": True,
"unicodekeyboard":True, #允許輸入中文
"resetkeyboard":True, #項目結束還原輸入法
}
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub',cap)
#獲取屏幕大小
def get_size():
x = driver.get_window_size()['width']
y = driver.get_window_size()['height']
return (x,y)
#點擊搜索
try:
if WebDriverWait(driver,10).until(lambda x:x.find_element_by_id('com.ss.android.ugc.aweme:id/bhh')):
driver.find_element_by_id('com.ss.android.ugc.aweme:id/bhh').click()
except:
pass
#定位搜索框
if WebDriverWait(driver,10).until(lambda x:x.find_element_by_xpath('//android.widget.FrameLayout[1]/android.widget.LinearLayout[1]/android.widget.FrameLayout[1]/android.widget.FrameLayout[1]/android.widget.FrameLayout[1]/android.widget.FrameLayout[1]/android.widget.EditText[1]')):
driver.find_element_by_xpath('//android.widget.FrameLayout[1]/android.widget.LinearLayout[1]/android.widget.FrameLayout[1]/android.widget.FrameLayout[1]/android.widget.FrameLayout[1]/android.widget.FrameLayout[1]/android.widget.EditText[1]').click()
driver.find_element_by_id('com.ss.android.ugc.aweme:id/ge').send_keys('191433445')
while driver.find_element_by_id('com.ss.android.ugc.aweme:id/ge').text != '191433445':
driver.find_element_by_id('com.ss.android.ugc.aweme:id/ge').send_keys('191433445')
time.sleep(0.2)
#點擊搜索
driver.find_element_by_id('com.ss.android.ugc.aweme:id/gg').click()
#選擇用戶標簽
if WebDriverWait(driver,10).until(lambda x:x.find_element_by_xpath('//android.widget.FrameLayout[1]/android.widget.LinearLayout[1]/android.widget.FrameLayout[1]/android.widget.FrameLayout[1]/android.widget.FrameLayout[2]/android.view.View[1]/android.widget.FrameLayout[1]/android.widget.FrameLayout[1]/android.widget.RelativeLayout[1]/android.widget.HorizontalScrollView[1]/android.widget.LinearLayout[1]/android.support.v7.app.ActionBar$Tab[3]/android.widget.TextView[1]')):
driver.find_element_by_xpath('//android.widget.FrameLayout[1]/android.widget.LinearLayout[1]/android.widget.FrameLayout[1]/android.widget.FrameLayout[1]/android.widget.FrameLayout[2]/android.view.View[1]/android.widget.FrameLayout[1]/android.widget.FrameLayout[1]/android.widget.RelativeLayout[1]/android.widget.HorizontalScrollView[1]/android.widget.LinearLayout[1]/android.support.v7.app.ActionBar$Tab[3]/android.widget.TextView[1]').click()
