首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

「docker实战篇」python的docker爬虫技术-appium+python实战(18)

上次通过appium进行了,录制脚本的功能,而且还可以进行转换成python,java,js等等语言的,这次实战下,从登陆,到进入某个页面操作获取信息。...启动直接adb中的uiautomatorviewer.bat 记得看看下载源码包里面的增强版 ? 5.看到uiautomatorviewer 和 夜神模拟器 ? 6.appium启动 ?...resource-id='com.tal.kaoyan:id/tv_agree']")): driver.find_element_by_xpath("//android.widget.TextView...2.python在运行过程中如果进行uiautomatorviewer加载会报错 3.python在使用的过程中需要先引入 from appium import webdriver from selenium.webdriver.support.ui...import WebDriverWait 4.前提是启动的appium:提示:The server is running ?

60510
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【问题解决】Appium+RobotFactory页面元素识别成功但点击不到的解决

    选择月份的,一个起始月份,一个终止月份,要求起始月份和终止月份一样(不知道为什么一样的话为什么还设计成点击两次而不是直接选择一个月份就可以了,页面就是这么设计的),选择的时候根据月份,第二个下拉菜单能找到元素...android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup/android.widget.ScrollView.../android.view.ViewGroup/android.view.ViewGroup[9]/android.widget.TextView (1)和(2)方案能找到元素,不报错,但是点击不到。...原因分析: 选择起始月份的时候页面已经有一个9月,所以截止月份同样用9月定位,能找到元素,但是点击的是错误的位置。...最终解决方案: 通过appium观测到菜单项所在的bounds值[307,1651][539,1708],然后根据页面像素值计算其相对位置,直接用Click A Point点击像素点,解决。

    91330

    Java自动化测试(Android app界面元素 33)

    查找当前Activity 启动入口appActivity和Activity的区别: appActivity在App中是唯一的,它的作用是用来启动app的 $ aapt dump badging D:\apk...\base.apk | find "launchable-activity" App页面布局 布局类型 框架布局 所有控件都被放置在左上的区域 下一个子控件会重叠覆盖上一个控件 线性布局 控件的排序方式...当视图显示给用户,在应用程序中显示为浮动。和Dialog不一样的是,它永远不会获得焦点,无法被点击。...Appium 调试代码 package com.zhongxin.day03; import io.appium.java_client.MobileBy; import io.appium.java_client.TouchAction...; import io.appium.java_client.android.AndroidDriver; import io.appium.java_client.touch.offset.PointOption

    1.2K10

    Appium自动化(10) - appium高级元素定位方式之 UI Automator API 的详解

    在设备上检索状态信息并执行操作的API 支持跨应用 UI 测试的API UI Automator 访问设备状态 UI Automator 测试框架提供了一个 UiDevice 类,用于在 app 运行的设备上进行访问和执行等操作...其中 在 appium 自动化代码选择元素时候直接使用到的 UiSelector 用来生成一个定位器来选择界面中的控件元素,可以通过text,content-desc,class,和一些状态信息来进行条件过滤...类似于 appium中 find_element_by_xxx() 方法中函数值 UiSelector UiSelector官方文档:https://developer.android.google.cn...基本上除了xpath之外,可以通过appium实现的元素定位方式,UIAutomator也有,因为底层就是靠他实现的 xpath 虽然没有直接对应的方法,但是像下面这种 xpath 写法,UIAutomator...封装的方法无法满足你的需求的时候可以尝试用 UI Automator API 去解决问题 但不建议,在日常工作中全都用 UI Automator API,学习成本 & 编写成本 & 维护成本都会高很多

    1.4K10

    Appium Desktop 使用

    Appium Desktop 元素定位 与Android的uiautomatorviewer一样,可进行元素定位,某些app 在 uiautomatorviewer中获取不到元素,小编这里就遇到获取某个页面元素时...元素定位 点击select element 按钮,选中需要定位的元素,右侧即展示出对应的元素定位信息,appium自动判断可通过哪些元素进行定位。下图例子账号框可通过xpath定位到。...模拟滑动操作 在页面中,我们怎么模拟手指滑动操作呢?...点击 Swipe By Coordinates,模拟手指在手机上的操作,点击开始点和结束点实现滑动 操作元素 点击某个元素进行下一步操作,比如例子中定位到密码框,输入密码,清除文本框内容等操作。...android.widget.LinearLayout/android.widget.FrameLayout/android.widget.RelativeLayout/android.widget.ScrollView

    1.6K80

    2.ui

    =2"当前列占用俩列 **特点:   tableRow:表示一行,其该节点的每一个子节点表示“一列”   TableLayout的一级子节点还匹配父元素(宽度匹配、但是高度不匹配)。  ...TableRow的子节点的宽和高是包裹内容。...一个是从里往外撑,一个是从外往里撑 ScrollView ScrollView滚动视图是指当拥有很多内容,屏幕显示不完时,需要通过滚动跳来显示的视图。ScrollView只支持垂直滚动。...(p.toString()); //把文本框设置为ll的子节点 ll.addView(tv); }//页面并没有实现滑动,所以在布局文件中外层添加一个ScrollView...>(this, R.layout.item_listvie, R.id.tv_name, objects)); arrayadapter也是可以操作不同数据的∶ SimpleAdapter //集合中每个元素都包含

    1.6K90

    Python Appium 安卓自动化测试 基本使用 - Phone Spider

    /search_src_text”),根据组件ID定位 index(1),根据在父元素中的位置下标进行定位,下标从1开始计算,类似xpath 里面的*[n]; instance(0),在定位的元素结果中根据下标进行取值...,下标从0开始计算; childSelector(new UiSelector().className(“android.widget.TextView”)),在定位的元素中继续定位子元素; from...appium.webdriver.common.appiumby import AppiumBy code = 'new UiSelector().text("搜索查询").className("android.widget.TextView...Desktop Appium 分析&定位App界面元素 3.1 启动步骤 1、打开Appium 点击Start Server,启动程序,点击右上角的放大镜 2、添加配置 # python代码需要使用到的配置...3.3 在Appium Desktop Appium 根据xpath语法进行元素搜索&定位 1、根据class进行定位需要写全://android.widget.TextView 2、根据根据resource-id

    54510

    技术分享 | app自动化测试(Android)--高级定位技巧

    原文链接 XPath高级定位技巧 XPath 简介 XPath 的英文全称为:XML Path Language,意旨对 XML 中的元素进行路径定位的一种语言,它可适用 XML 标记语言,Html...driver.findElement(By.xpath( "//*[@text=\"注册/登录\" and @index=\"1\"]")).click(); XPath 层级定位 通常定位元素的时候可能会涉及到通过子元素去定位父元素...示例代码如下: PYTHON 版本 # 通过子元素定位父元素 # 方法一:.. driver.find_element_by_xpath( '//*[@text="手机号"]/..').tag_name.../li' ).tag_name JAVA 版本 // 通过子元素定位父元素 // 方法一:.. driver.findElement(By.xpath( "//*[@text=\"手机号...css selector元素定位 Appium Server 从 1.19.0 这个版本开始,元素定位增加了 css selector 的支持。

    79210

    技术分享 | app自动化测试(Android)--高级定位技巧

    XPath高级定位技巧XPath 简介XPath 的英文全称为:XML Path Language,意旨对 XML 中的元素进行路径定位的一种语言,它可适用 XML 标记语言,Html 标记语言,app...XPath 基本语法下面是 XPath 的常用方法:"/"还可表示子元素"//"还可表示子孙元素XPath 模糊定位技巧contains( )方法是模糊匹配的定位方法,对于一个元素的属性不固定,就可以模糊匹配...driver.findElement(By.xpath( "//*[@text=\"注册/登录\" and @index=\"1\"]")).click();XPath 层级定位通常定位元素的时候可能会涉及到通过子元素去定位父元素...示例代码如下:PYTHON 版本# 通过子元素定位父元素# 方法一:..driver.find_element_by_xpath( '//*[@text="手机号"]/..').tag_name#.../li' ).tag_nameJAVA 版本// 通过子元素定位父元素// 方法一:..driver.findElement(By.xpath( "//*[@text=\"手机号\"]/..

    1.5K82

    技术分享 | app自动化测试(Android)--高级定位技巧

    XPath高级定位技巧XPath 简介XPath 的英文全称为:XML Path Language,意旨对 XML 中的元素进行路径定位的一种语言,它可适用 XML 标记语言,Html 标记语言,app...XPath 基本语法下面是 XPath 的常用方法:"/"还可表示子元素 "//"还可表示子孙元素XPath 模糊定位技巧contains( )方法是模糊匹配的定位方法,对于一个元素的属性不固定,就可以模糊匹配...driver.findElement(By.xpath( "//*[@text=\"注册/登录\" and @index=\"1\"]")).click();复制XPath 层级定位通常定位元素的时候可能会涉及到通过子元素去定位父元素...示例代码如下:PYTHON 版本# 通过子元素定位父元素# 方法一:..driver.find_element_by_xpath( '//*[@text="手机号"]/..').tag_name#.../li' ).tag_name复制JAVA 版本// 通过子元素定位父元素// 方法一:..driver.findElement(By.xpath( "//*[@text=\"手机号\"]/

    87830

    SwipeRefreshLayout下拉刷新组件

    在实际开发中,经常都会遇到下拉刷新、上拉加载更多的情形,这一期就一起来学习Android系统的SwipeRefreshLayout下拉刷新组件。...使用SwipeRefrshLayout要想达到刷新的目的,首先需要在这个布局里包裹可以滑动的子控件,如ScrollView、ListView、RecyclerView等,并且只能有一个子控件。...> 上面的代码中SwipeRefreshLayout只有一个为ScrollView的子元素,其中是一个文本框...} 上面的代码很简单,先给SwipeRefreshLayout设置了刷新时的动画颜色,然后给SwipeRefreshLayout添加一个下拉的Listener,在onRefresh()回调方法中来改变文本框里面的内容..."); } } @Override public void onRefresh() { // 模拟一些比较耗时的操作,比如联网获取数据,需要放到子线程去执行

    3.3K70

    App自动化测试|dom结构和元素定位方式

    核心元素为节点和属性xpath: xml路径语言,用于xml 中的节点定位,XPath 可在 xml 文档中对元素和属性进行遍历如下我们再来看一个App的dom:控件的基础知识和selenium一样,appium...:2.21 通过 “class” 查找 (例如, UI 组件的类型)-一般不推荐这种就是通过判断控件类型来查找,例如TextView、ImageView等图片在实际工作中,这种定位方式几乎不用,因为一个页面中可能会有很多的...TextView、ImageView等;appiumdriver.findElementByClassName("android.widget.TextView");如上所述,xpath是不仅可以在移动端进行元素定位...一个界面上有多同类型控件,这些控件有相同的id或属性,不具备唯一性,所以无法直接进行指定控件的定位操作,这个时候就该xpath大显身手了如我们要定位"画好一个封闭的圆"后面跟着的第二个RelativeLayout...click(ByText(departName));//现在利用xpath重新定位确认后再操作,成功率大大提升运行效果演示:图片在之前的一篇文章中我们介绍过appium底层的使用了各种引擎

    1.3K40

    Material Design 进阶之二-使用TextInputLayout的登陆界面

    如果我们想写一个登陆界面是不是一般都写两组TextView,EditText及一个Button,不过体验并不是太好,等等这些麻烦的的处理在Material Design TextInputLayout...TextInputLayout只接受一个子元素,类似于a  ScrollView。子元素必须是一个EditText 元素。...public boolean validatePassword(String password) { return password.length() > 5; } } 如何获得输入框中的文字呢...---- 检索数据 正如我所说的,TextInputLayout 只是一个包装,但不像  LinearLayout 并且  ScrollView,你可以使用特定的方法获得它的子元素  getEditText...每个小部件的颜色都直接从style.xml文件中指定的主题颜色中绘制 。只需打开它并将colorAccent项目添加到活动主题即可更改表单的颜色方案。

    1.4K20

    XPath定位如何在App自动化测试中大显神威

    简介和selenium类似,作为App自动化测试的主流框架,appium也是以webdriver为基础来自动化操作App的,所以对于元素定位,其实appium与selenium也是类似的,只是appium...本文将以淘宝App为例,定位左上角的扫一扫按钮,介绍xpath定位方法在appium元素定位中的使用。...[2]'driver.find_element_by_xpath(father_son).click()子元素定位父元素# 通过子元素定位父元素# 方法一: ..sun_fa1 = '//*[@resource-id...parent::android.widget.LinearLayout'e = driver.find_element_by_xpath(son_father).tag_nameprint(e)定位兄弟元素通过子元素...,先找到父元素,再找父元素下的子元素,就可以找到兄弟元素# 兄弟元素xiongdi = '//*[@resource-id="com.taobao.taobao:id/bar_search"]/..

    20510

    提升市场调研和竞品分析效率:利用Appium实现App数据爬取

    在代码中,我们将使用Python编写脚本来控制Appium框架,并通过XPath或ID等方式来定位App上的元素编写思路:导入所需的库和模块,并进行必要的配置,包括代理信息。...[@text='商品']").click()# 查看评价time.sleep(3)driver.find_element_by_xpath("//android.widget.TextView[@text...='评价']").click()# 获取评价数据time.sleep(3)comments = driver.find_elements_by_xpath("//android.widget.TextView...关闭Appium服务和连接driver.quit()在实际应用中,我们可以根据具体的需求和场景,选择合适的Appium爬取策略。...例如,可以通过查找元素、获取元素的文本内容、模拟用户操作等方式来获取所需的数据。同时,我们还可以结合其他技术和工具,如数据清洗和分析工具等,来进一步优化数据挖掘的过程和结果。

    75620

    【Android从零单排系列二十六】《Android视图控件——ScrollView》

    ScrollView可以嵌套其他视图组件,例如TextView、ImageView等,以实现滚动展示更多内容。它对于需要显示较长文本、图片或其他可滚动内容的界面非常有用。...在ScrollView中,只能包含一个直接子视图(ViewGroup),通常是一个垂直方向的线性布局或相对布局。如果需要水平滚动效果,可以使用HorizontalScrollView作为替代。...二 ScrollView使用方法 在XML布局文件中定义ScrollView容器。在需要可滚动内容的区域内添加ScrollView标签,并指定其宽度、高度以及其他属性。.../> TextView android:layout_width="match_parent" android:layout_height.../> ScrollView> 五 总结 由于ScrollView一次性将全部内容加载到内存中,对于特别庞大的视图可能会导致性能问题。

    46020
    领券