appium如何判断滑动到页面底部(Python),Appium,了

发表时间:2020-03-02

需求 :在做appium自动化的过程中遇到一个问题,每次下滑都会刷新页面(比如微信朋友圈),要通过滑动获取所有页面信息,直到滑动到页面底部,但是不知道怎么判断滑动到底部从而终止滑动的循环(appium无法得知滑动成功还是失败)

appium本身没有直接判断是否滑动到页面底部的函数,但是我们可以通过一个比较笨的方法来实现滑动到页面底部的判断,思路也比较简单:判断滑动前后的页面元素是否完全一致,如果完全一致则说明滑动失败(已经滑动到了底部),如果不一致则说明滑动成功。示例代码如下:

# 获取滑动前页面元素
before_swipe = driver.page_source
# 滑动
driver.swipe(300, 1000, 300, 300) 
# 获取滑动后页面元素
after_swipe = driver.page_source
# 对比滑动前后的页面元素
# 若滑动前后页面元素完全相同,则滑动失败,已达页尾
if before_swipe == after_swipe:
    Swiped = False
# 若滑动前后页面元素不同,则滑动成功,继续滑动
else:
   Swiped = True

我们用 driver.page_source 来获取页面元素,用变量 Swiped 来标记是否滑动成功(此变量可用作 while 循环的判断条件)


参考

  1. 思路来源于stackoverflow: How to Swipe and Scroll to the Last in Appium
  2. Java同需求代码参考: appium滑动到元素或滑动到页面底部
  3. Appium Appium Python API 中文版 By-HZJ
  4. 注意:java和python的获取页面元素的方式不同,java是通过方法 driver.getPageSource() ,而python是通过获取属性值 driver.page_source

文章来源互联网,如有侵权,请联系管理员删除。邮箱:417803890@qq.com / QQ:417803890

微配音

Python Free

邮箱:417803890@qq.com
QQ:417803890

皖ICP备19001818号-4
© 2019 copyright www.pythonf.cn - All rights reserved

微信扫一扫关注公众号:

联系方式

Python Free