python模拟android屏幕高频点击工具

Posted medivhxu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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()

 

技术分享图片技术分享图片

以上是关于python模拟android屏幕高频点击工具的主要内容,如果未能解决你的问题,请参考以下文章

android 怎么实现点击屏幕其他地方popupwindow消失

利用monkeyrunner实现Android屏幕连续截图

adb 模拟双击 快速点击屏幕

Android 模拟手势点击屏幕

在Android 和 iOS 手机上模拟触屏点击的区别

Android模拟屏幕点击input tap替代解决方案