Appium + python - get_attribute获取value操作
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操作的更多相关文章
- Appium + python - swipe滑屏操作实例
方法一: from appium import webdriverfrom time import sleep descred_caps = { "platformName":&q ...
- Appium+Python之获取toast
思考:手机APP上的必填或错误文本提示一般1-2s就会消失,比较难定位,所以一般的固定元素定位方式是不可用的,那我们如何定位toast呢? 前提:1.Appium1.6.3以上(包括1.6.3) 2. ...
- Appium+python自动化获取toast消息的方法
转载地址:https://www.cnblogs.com/shangren/p/8191879.html 1. 首先执行这个命令:npm install -g cnpm --registry=http ...
- Appium+python自动化获取toast消息(windows版)的方法
原来用的Appium1.5.3GUI版本,那为什么升级呢? 为了兼容最新版本的iOS10和Android7 Xcode8升级后,将不支持使用UIAutomation,而是改为使用XCUITest了,并 ...
- Appium + python - weixin公众号操作
from appium import webdriverfrom time import sleep desired_caps = { "platformName":"A ...
- Appium + python - automator定位升级版操作
# coding:utf-8 """参考博客链接:https://www.cnblogs.com/yoyoketang/p/7843819.html"" ...
- appium+Python 启动app(一)
当我们appium和Python环境都配置好了,如何启动我们第一个app呢?下面介绍appium+Python启动app的操作步骤,为了能够详细查看,我们这里使用夜游神模拟器进行示范. 测试项目:QQ ...
- appium+python自动化:获取元素属性get_attribute
使用get_attribute()获取元素属性,括号里应该填写什么? 查看appium源码 如果是获取resource-id,填写resourceId self.driver.find_element ...
- appium+python自动化34-获取元素属性get_attribute
获取text # coding:utf-8 from appium import webdriver from time import sleep desired_caps = { 'platform ...
随机推荐
- Centos6.6 安装nfs网络文件系统
一.介绍 nfs网络文件系统的,大部分用在内网文件共享,比如,对集群上传文件做共享,经常用在图片部分,当然数据量大了还是要做分离,做为专门的接口比较好,介绍一下基本安装环境: 1)Cnetos6.6 ...
- cad二次开发中各种头的定义
Database db=HostApplicationServices.WrokingDatabase; Editor ed=Autodesk.AutoCAD.ApplicationService.A ...
- 实现动画之CSS与JavaScript对比
曾经某个时期,大多数开发者使用 jQuery 给浏览器中的元素添加动画.让这个淡化,让那个扩大,很简单.随着互动的项目越来越复杂,移动设备的大量增加,表现性能变得越来越重要.Flash 被抛弃,有天赋 ...
- tomcat 编码设置
在Tomcat8.0之前的版本,如果你要向服务器提交中文是需要转码的(如果你没有修改server.xml中的默认编码),因为8.0之前Tomcat的默认编码为ISO8859-1. POST方式提交 r ...
- bootstrap table分页(前后端两种方式实现)
bootstrap table分页的两种方式: 前端分页:一次性从数据库查询所有的数据,在前端进行分页(数据量小的时候或者逻辑处理不复杂的话可以使用前端分页) 服务器分页:每次只查询当前页面加载所需要 ...
- webpack打包出错,通过babel将es6转es5的出错。
错误信息如下: 解决方法: 1,先安装babel-preset-es2015到项目中, cnpm install babel-preset-es2015 --save-dev2,在项目根目录中新建一个 ...
- webAPP 原生APP 对比
Web App即是一种框架型APP开发模式(HTML5 APP 框架开发模式),该开发具有跨平台的优势,该模式通常由“HTML5云网站+APP应用客户端”两部份构成,APP应用客户端只需安装应用的框架 ...
- 51nod1049 最大子段和【动态规划】
N个整数组成的序列a[1],a[2],a[3],-,a[n],求该序列如a[i]+a[i+1]+-+a[j]的连续子段和的最大值.当所给的整数均为负数时和为0. 例如:-2,11,-4,13,-5,- ...
- cin输入过慢用scanf???现在才知道cin可以加速
今天才发现可以加速原帖 只需要两行放在main开头即可 ios_base::sync_with_stdio(0); cin.tie(NULL);
- 解决Scrapy抓取中文网页保存为json文件时中文不显示而是显示unicode的问题
注意:此方法跟之前保存成json文件的写法有少许不同之处,注意区分 情境再现: 使用scrapy抓取中文网页,得到的数据类型是unicode,在控制台输出的话也是显示unicode,如下所示 {'au ...