python simulation android screen high frequency click tool

1. Environment

    windows 10  + python3.6

2. Demand

    1. Simulate high-frequency click events on android devices;

    2. Simulate a specified number of click events or simulate a click event within a specified time period;

Three, code

    1. Simulate a click event within a specified time

#!/usr/bin/env python3 
# coding=utf-8

import subprocess
import time


def loop_click_for_android(run_time=5):
    res = subprocess.Popen('adb devices',
                           shell=True, stdout=subprocess.PIPE)
    res.stdout.read()
    inputs = str(input("请确保已打开测试页面(y/n): "))

    if inputs == "y":
        num = 0
        node_time = time.time()
        start_buttun = subprocess.Popen("adb shell input tap 600 1660")
        if start_buttun:
            while True:
                result = subprocess.Popen("adb shell input tap 600 1660")
                if result:
                    num += 1
                    if node_time + run_time <= time.time():
                        break
                    else:
                        continue
        print("发送点击次数{}".format(num))   # 次数统计并不准确
    else:
        print("程序关闭~")
        exit(1)


loop_click_for_android()

    2. Simulate a specified number of click events

# !/usr/bin/env python3
# coding=utf-8

import subprocess
import time


def loop_click_for_android(run_num=150):
    res = subprocess.Popen('adb devices',
                           shell=True, stdout=subprocess.PIPE)
    res.stdout.read()
    inputs = str(input("请确保已打开测试页面(y/n): "))

    if inputs == "y":
        num = 0
        node_time = time.time()
        start_buttun = subprocess.Popen("adb shell input tap 600 1660")
        if start_buttun:
            while True:
                result = subprocess.Popen("adb shell input tap 600 1100")
                if result:
                    num += 1
                    if num == run_num:
                        break
                    else:
                        continue
        over_time = time.time()
        print("{}次点击的运行时间是:{}".format(run_num, over_time-node_time))   # 次数统计并不准确
    else:
        print("程序关闭~")
        exit(1)


loop_click_for_android()

 

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=324377113&siteId=291194637
Recommended