from appium import webdriver
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from time import sleep
descred_caps = {
"platformName":"Android",
"platformVersion":"5.1.1",
"deviceName":"127.0.0.1:62001",
"appPackage":"com.baidu.yuedu",
"appActivity":"com.baidu.yuedu.splash.SplashActivity",
"automationName":"uiautomator2",
"noRset":"true",
"unicodeKeyboard":"true",
"resetKeyboard":"true"
}
driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub",descred_caps) #获取当前的avtivity
print(driver.current_activity) #弹出个性化定制 -- 点击热门图书
# 等主页面activity出现
driver.wait_activity(".usercenter.view.activity.UserInterestSetActivity",10)
driver.wait_activity(".splash.SplashActivity",20)
# sleep(20)
try:
#-- 点击文学艺术
driver.find_element_by_id("com.baidu.yuedu:id/check_box_6").click() #男生爱读
sleep(5)
driver.tap([(132,833),(288,868)],500)
sleep(4)
driver.tap([(500,833),(657,868)],500) #点击选好了
driver.find_element_by_id("com.baidu.yuedu:id/tv_next").click() #点击简约白
driver.find_element_by_id("com.baidu.yuedu:id/rbtn_theme_white").click()
driver.find_element_by_id("com.baidu.yuedu:id/cb_choose_view").click()
#点击立即开启
driver.find_element_by_id("com.baidu.yuedu:id/tv_open").click() #点击知道了
driver.find_element_by_id("com.baidu.yuedu:id/positive").click() # 获取当前的avtivity
print(driver.current_activity)
print(driver.contexts) driver.back() #点返回
# 定位toast元素
toast_loc = ("xpath", ".//*[contains(@text,'再按一次退出')]")
t = WebDriverWait(driver, 10, 0.1).until(EC.presence_of_element_located(toast_loc))
print(t) #点击图书
driver.find_element_by_id("com.baidu.yuedu:id/tv_tab_title").click() # 获取text
print(driver.find_element_by_id("com.baidu.yuedu:id/tv_tab_title").text) #获取tag_name
print(driver.find_element_by_id("com.baidu.yuedu:id/tv_tab_title").tag_name) # content-desc为空,获取的是text
print(driver.find_element_by_id("com.baidu.yuedu:id/tv_tab_title").get_attribute("name")) #text
print(driver.find_element_by_id("com.baidu.yuedu:id/tv_tab_title").get_attribute("text")) #bounds
print(driver.find_element_by_id("com.baidu.yuedu:id/tv_tab_title").get_attribute("bounds")) #size
print(driver.find_element_by_id("com.baidu.yuedu:id/tv_tab_title").size) #location
print(driver.find_element_by_id("com.baidu.yuedu:id/tv_tab_title").location) except Exception:
print("出错啦")
# driver.quit()

Appium + python - get_attribute获取value操作的更多相关文章

  1. Appium + python - swipe滑屏操作实例

    方法一: from appium import webdriverfrom time import sleep descred_caps = { "platformName":&q ...

  2. Appium+Python之获取toast

    思考:手机APP上的必填或错误文本提示一般1-2s就会消失,比较难定位,所以一般的固定元素定位方式是不可用的,那我们如何定位toast呢? 前提:1.Appium1.6.3以上(包括1.6.3) 2. ...

  3. Appium+python自动化获取toast消息的方法

    转载地址:https://www.cnblogs.com/shangren/p/8191879.html 1. 首先执行这个命令:npm install -g cnpm --registry=http ...

  4. Appium+python自动化获取toast消息(windows版)的方法

    原来用的Appium1.5.3GUI版本,那为什么升级呢? 为了兼容最新版本的iOS10和Android7 Xcode8升级后,将不支持使用UIAutomation,而是改为使用XCUITest了,并 ...

  5. Appium + python - weixin公众号操作

    from appium import webdriverfrom time import sleep desired_caps = { "platformName":"A ...

  6. Appium + python - automator定位升级版操作

    # coding:utf-8 """参考博客链接:https://www.cnblogs.com/yoyoketang/p/7843819.html"" ...

  7. appium+Python 启动app(一)

    当我们appium和Python环境都配置好了,如何启动我们第一个app呢?下面介绍appium+Python启动app的操作步骤,为了能够详细查看,我们这里使用夜游神模拟器进行示范. 测试项目:QQ ...

  8. appium+python自动化:获取元素属性get_attribute

    使用get_attribute()获取元素属性,括号里应该填写什么? 查看appium源码 如果是获取resource-id,填写resourceId self.driver.find_element ...

  9. appium+python自动化34-获取元素属性get_attribute

    获取text # coding:utf-8 from appium import webdriver from time import sleep desired_caps = { 'platform ...

随机推荐

  1. cordova插件分类

    1.android自动更新功能所需插件 cordova plugin add https://github.com/whiteoctober/cordova-plugin-app-version.gi ...

  2. Android 双屏异显

    android双屏是克隆模式,如果要在第二屏幕显示不同内容,需要自定义一个Presentation类 1.先设置权限 (刚开始折腾很久没有效果,后来发现是没设置权限) <!-- 显示系统窗口权限 ...

  3. JS数组reduce()方法

    1.语法 arr.reduce(callback,[initialValue]) reduce 为数组中的每一个元素依次执行回调函数,不包括数组中被删除或从未被赋值的元素,接受四个参数:初始值(或者上 ...

  4. 最新 Xilinx vivado IP许可申请

    xilinx的fpga使用vivado开发,zynq系列fpga的SOC开发成为主流,加快fpga开发,也进一步提高了fpga开发的灵活性. xilinx提供很多ip核供开发者直接使用,开发快捷方便, ...

  5. colgroup 整行变色

    <table border="2" width="100%"> <colgroup span="2" align=&quo ...

  6. git对vue项目进行版本管理

    生成本地仓库 步骤一:git init 步骤二:git add * 步骤三:git commit -m 'init team' 创建远程仓库 new responstory 复制关联代码的命令 将本地 ...

  7. gitlab的添加密钥

    1.在本地电脑下载git的客户端并且安装 2.鼠标右键左面选中Git Bash Here 3.操作如下图生成密钥 4.将密钥复制过来添加到gitLab中 5.Eclipse配置密钥 6.在git创建的 ...

  8. 34.分组聚合操作—bucket

    主要知识点: 学习聚合知识     一.准备数据     1.家电卖场案例背景建立index 以一个家电卖场中的电视销售数据为背景,来对各种品牌,各种颜色的电视的销量和销售额,进行各种各样角度的分析 ...

  9. SQLServer中的Cross Apply、Outer Apply

    https://www.2cto.com/database/201304/206330.html

  10. 【codeforces 776E】The Holmes Children

    [题目链接]:http://codeforces.com/contest/776/problem/E [题意] f(n)是小于n的不同整数对(x,y)这里x+y==n且gcd(x,y)==1的个数; ...