appium-python自动化之get_attribute笔记(摘)

原文转自:https://www.cnblogs.com/yoyoketang/p/7942745.html

参考链接:https://blog.csdn.net/u012111923/article/details/80824189

获取text

# coding:utf-8
from appium import webdriver
from time import sleep desired_caps = { 'platformName': 'Android', 'deviceName': '127.0.0.1:62001', 'platformVersion': '4.4.2', 'appPackage': 'com.baidu.yuedu', 'appActivity': 'com.baidu.yuedu.splash.SplashActivity', 'noReset': 'true', 'resetKeyboard': 'true', 'unicodeKeyboard': 'true' } driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps) # 等主页面activity出现 driver.wait_activity(".base.ui.MainActivity", 10) # 点取消升级 driver.find_element_by_id("com.baidu.yuedu:id/negativeUpgrade").click() # 获取text t1 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").text print(t1)

tag_name

1.tag_name实质上是获取class属性

# 获取tag_name
t2 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").tag_name
print(t2)

2.打印结果:android.widget.TextView

get_attribute

1.获取content-desc属性,这里注意了,如果content-desc属性为空,那么获取的就是text属性,不为空获取的才是content-desc属性

2.content-desc属性为空,打印结果:书架

# content-desc为空,获取的是text
t3 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("name")
print(t3)

3.content-desc属性不为空,打印结果:百度阅读

# content-desc
t4 = driver.find_element_by_id("com.baidu.yuedu:id/fragment_banner").get_attribute("name")
print t4

备注:content-desc属性也可以这样获取:get_attribute("contentDescription")

4.id,calss,text属性获取

# id
t5 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("resourceId")
print(t5)

# class
t6 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("className") print(t6) # text t7 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("text") print(t7)

5.其它属性获取,注意这里并不是所有的都可以获取,一些标准的属性是可以获取到的

# checkable
t8 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("checkable")
print t8

# clickable
t9 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("clickable") print t9 

size和location

1.获取size,返回的是字典,如:{'width': 84, 'height': 84}

2.获取location,返回的是字典,如:{'y': 38, 'x': 192}

# size
t10 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").size
print t10

# location
t11 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").location
print t11

参考代码

# coding:utf-8
from appium import webdriver

desired_caps = {
                'platformName': 'Android', 'deviceName': '127.0.0.1:62001', 'platformVersion': '4.4.2', 'appPackage': 'com.baidu.yuedu', 'appActivity': 'com.baidu.yuedu.splash.SplashActivity', 'noReset': 'true', 'resetKeyboard': 'true', 'unicodeKeyboard': 'true' } driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps) # 等主页面activity出现 driver.wait_activity(".base.ui.MainActivity", 10) # 点取消升级 driver.find_element_by_id("com.baidu.yuedu:id/negativeUpgrade").click() # 获取text t1 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").text print(t1) # 获取tag_name t2 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").tag_name print(t2) # content-desc为空,获取的是text t3 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("name") print(t3) # content-desc t4 = driver.find_element_by_id("com.baidu.yuedu:id/fragment_banner").get_attribute("name") print t4 # id t5 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("resourceId") print(t5) # class t6 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("className") print(t6) # text t7 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("text") print(t7) # checkable t8 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("checkable") print t8 # clickable t9 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("clickable") print t9 # size t10 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").size print t10 # location t11 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").location print t11



转载于:https://www.cnblogs.com/konkon/p/10011955.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值