zoukankan      html  css  js  c++  java
  • python模拟android屏幕高频点击工具

    一、环境

        windows 10  + python3.6

    二、需求

        1、模拟android设备高频点击事件;

        2、模拟规定次数的点击事件或模拟规定时间内的点击事件;

    三、code

        1、模拟规定时间内的点击事件 

     1 #!/usr/bin/env python3 
     2 # coding=utf-8
     3 
     4 import subprocess
     5 import time
     6 
     7 
     8 def loop_click_for_android(run_time=5):
     9     res = subprocess.Popen('adb devices',
    10                            shell=True, stdout=subprocess.PIPE)
    11     res.stdout.read()
    12     inputs = str(input("请确保已打开测试页面(y/n): "))
    13 
    14     if inputs == "y":
    15         num = 0
    16         node_time = time.time()
    17         start_buttun = subprocess.Popen("adb shell input tap 600 1660")
    18         if start_buttun:
    19             while True:
    20                 result = subprocess.Popen("adb shell input tap 600 1660")
    21                 if result:
    22                     num += 1
    23                     if node_time + run_time <= time.time():
    24                         break
    25                     else:
    26                         continue
    27         print("发送点击次数{}".format(num))   # 次数统计并不准确
    28     else:
    29         print("程序关闭~")
    30         exit(1)
    31 
    32 
    33 loop_click_for_android()

        2、模拟规定次数的点击事件

     1 # !/usr/bin/env python3
     2 # coding=utf-8
     3 
     4 import subprocess
     5 import time
     6 
     7 
     8 def loop_click_for_android(run_num=150):
     9     res = subprocess.Popen('adb devices',
    10                            shell=True, stdout=subprocess.PIPE)
    11     res.stdout.read()
    12     inputs = str(input("请确保已打开测试页面(y/n): "))
    13 
    14     if inputs == "y":
    15         num = 0
    16         node_time = time.time()
    17         start_buttun = subprocess.Popen("adb shell input tap 600 1660")
    18         if start_buttun:
    19             while True:
    20                 result = subprocess.Popen("adb shell input tap 600 1100")
    21                 if result:
    22                     num += 1
    23                     if num == run_num:
    24                         break
    25                     else:
    26                         continue
    27         over_time = time.time()
    28         print("{}次点击的运行时间是:{}".format(run_num, over_time-node_time))   # 次数统计并不准确
    29     else:
    30         print("程序关闭~")
    31         exit(1)
    32 
    33 
    34 loop_click_for_android()
  • 相关阅读:
    CodeForces-786B Legacy (线段树优化建图,单源最短路)
    CodeForces-528C Data Center Drama
    CodeForces-723E One-Way Reform
    2-SAT入门
    POJ-3683 Priest John's Busiest Day (2-SAT 求任意可行方案)
    转载: 8天学通MongoDB——第一天 基础入门
    C# 非EF注册登录与EF注册登录
    Asp.Net入门(三)
    非EF分页
    sql语句错误大集合
  • 原文地址:https://www.cnblogs.com/medivhxu/p/8492608.html
Copyright © 2011-2022 走看看