uiautomator2 安裝
python uiautomator2 安裝及使用-CSDN博客
一, 通過包名可以打開app?
d.app_start('com.gacne.www')
打開app運行后執行代碼,查看app具體信息獲取包名
d.info
二,執行等待點擊
# 160秒內等待xpath定位的出現執行點擊
d.xpath('//*[@text="此地"]').wait(160).click()?
三,屏幕截圖
png_path = './images/'+str(i)+'.png'
d.screenshot(png_path)?
四,獲取文本內容
#第一種
d.xpath('//*[@resource-id="cache-content"]/android.view.View[3]/android.widget.TextView[2]').info.get('text')
#第二種
d.xpath('//*[@resource-id="cache-content"]/android.view.View[3]/android.widget.TextView[2]').get_text()
五,定位元素
(3)ResourceId定位
d(resourceId="com.addcn.android.house591:id/ad_banner").click()
(4)Text定位
d(text="精選").click()
(5)Description定位
d(description="..").click()
(6)ClassName定位
d(className="android.widget.TextView").click()
(7)xpath定位
d.xpath("//*[@content-desc='分享']").click()
六,通過父級定位元素
d(resourceId="com.ss.android.ugc.aweme:id/a0b").child(className="android.widget.FrameLayout")
?選擇父級下的一個元素
d(className="androidx.recyclerview.widget.RecyclerView").child(className="android.widget.FrameLayout")[0].get_text()
child_by_text 定位子元素
#定位父級下text為'xxx',class為'com.lynx.tasm.behavior.ui.text.FlattenUIText'的元素
d(resourceId="com.ss.android.ugc.aweme:id/a0b").child_by_text('xxx',className="com.lynx.tasm.behavior.ui.text.FlattenUIText")
child_by_description?
#定位父級下description?為'xxx',class為'com.lynx.tasm.behavior.ui.text.FlattenUIText'的元素
re = d(resourceId="com.ss.android.ugc.aweme:id/a0b").child_by_description('xxx',className="com.lynx.tasm.behavior.ui.text.FlattenUIText")
?siblings
#定位text為'xxx',class為'com.lynx.tasm.behavior.ui.view.UIView'的兄弟元素
d(text="zcdsczzx").sibling(text="xxx",className="com.lynx.tasm.behavior.ui.view.UIView")