方法对应属性备注
driver.find_element_by_id(‘aaa’)resource-id—
driver.find_element_by_accessibility_id(‘aaa’)content-desc—
driver.find_element_by_xpath(‘aaa’)xpath—
driver.find_element_by_name(‘aaa’)textappium1.5开始,不支持name定位。
1)driver.find_element_by_class_name(‘aaa’)
2)driver.find_elements_by_class_name(‘aaa’)[n]— n为列表下标。
classclass属性一般不唯一,元素不唯一时,用1)定位会报错,此时可以用2)。
driver.find_element_by_link_text(‘aaa’)link_text—
driver.find_element_by_partial_link_text(‘aaa’)partial_link_text—
driver.find_element_by_css_selector(‘aaa’)css_selector—
driver.find_element_by_tag_name(‘aaa’)tag_name—
driver.find_element_by_ios_uiautomation(‘aaa’)ios_uiautomation—
driver.find_element_by_ios_predicate(‘aaa’)ios_predicate—
driver.find_element_by_ios_class_chain(‘aaa’)ios_class_chain—
driver.tap(self, positions, duration=None)boundspositions: list类型,里面对象是元组,最多五个。如:[(100, 20), (100, 60)]。–duration: 持续时间,单位毫秒,建议设置500-1000。 eg: driver.tap([(100, 20), (100, 60), (100, 100)], 500) 。当其他方法都定位不到时,再使用该方法。而且坐标不能写死,因为手机有不同的分辨率,需要计算相对比例。
driver.find_element_by_android_uiautomator(‘aaa’)元素定位 android_uiautomator详情请看下表
元素定位方法备注
单元素-text定位精确匹配
driver.find_element_by_android_uiautomator(‘new UiSelector().text(‘aaa’)’)
模糊匹配
driver.find_element_by_android_uiautomator(‘new UiSelector().textContains(‘aaa’)’)
开头匹配
driver.find_element_by_android_uiautomator(‘new UiSelector().textStartWith(‘aaa’)’)
正则匹配
driver.find_element_by_android_uiautomator(‘new UiSelector().textMatches(‘aaa’)’)
—
单元素-resource-id定位driver.find_element_by_android_uiautomator(‘new UiSelector().resourceId(‘aaa’)’)—
单元素-class定位driver.find_elements_by_android_uiautomator(‘new UiSelector().className(‘aaa’)’)[n]—
单元素-content-desc定位driver.find_element_by_android_uiautomator(‘new UiSelector().description(‘aaa’)’)—
多元素- 组合定位driver.find_element_by_android_uiautomator(‘resoureceId(‘aaa’).text(‘bbb’)’)一般使用id,class,text两两组合;其次使用description 。
多元素- 父子定位find_element_by_android_uiautomator(‘resourceId(‘aaa’).childSelector(text(‘bbb’))’)通过父元素找到子元素。
多元素- 兄弟定位fromParentdriver.find_element_by_android_uiautomator(‘resourceId(‘aaa’).fromParent(text(‘bbb’))’)通过相邻元素定位。
Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐