import sysimport reimport timeimport pyautoguiimport os.pathfrom datetime import datetimeimport logging # 引入logging模块import randomclass Android:def __init__(self):self.application = "安卓应用"self.logger = logging.getLogger()self.logger.setLevel(logging.INFO) # Log等级总开关# 第二步,创建一个handler,用于写入日志文件self.rq = time.strftime('%Y%m%d%H%M', time.localtime(time.time()))self.log_path = os.path.dirname(os.getcwd()) + '/Logs/' + self.applicationtry:os.makedirs(self.log_path)except:passself.logfile = self.log_path + '/' + self.rq + '.log'self.fh = logging.FileHandler(self.logfile, mode='w')self.fh.setLevel(logging.DEBUG)self.formatter = logging.Formatter("%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s")self.fh.setFormatter(self.formatter)self.logger.addHandler(self.fh)pyautogui.moveTo(x=0, y=0, duration=0.5, tween=pyautogui.linear)pyautogui.FAILSAFE = Falseself.logger.info("*" * 20 + "当前测试程序:" + self.application + "*" * 20)pyautogui.PAUSE = 2def monkey(self, x, y):x_ = (x - 323, x + 100)y_ = (y + 40, y + 800)x = random.randint(x_[0], x_[1])y = random.randint(y_[0], y_[1])pyautogui.typewrite(message="hello world", interval=0.1)pyautogui.moveTo(x, y)pyautogui.click()pyautogui.dragRel(xOffset=100, yOffset=100)pyautogui.doubleClick()pyautogui.scroll(-50)def start(self, app):try:self.logger.info("当前测试程序" + app)os.system("startapp " + app)time.sleep(10)x, y, w, h = pyautogui.locateOnScreen('./Pictures/commonly_pics/close.png', grayscale=True, confidence=0.7)pyautogui.moveTo(x, y)pyautogui.click()except:self.logger.error("当前程序出现错误" + app)def screen(self, app):self.logger.info("当前测试程序" + app)os.system("startapp " + app)time.sleep(4)x, y, w, h = pyautogui.locateOnScreen('./commonly_pics/sanlian.png', grayscale=True,confidence=0.7)im1 = pyautogui.screenshot(region=(x - 323, y, 480, 843))im1.save("./appPng/" + now_day + "/" + str(app) + "1.png")for i in range(5):self.monkey(x, y)im2 = pyautogui.screenshot(region=(x - 323, y, 480, 843))im2.save("./appPng/" + now_day + "/" + str(app) + "2.png")try:x, y, w, h = pyautogui.locateOnScreen('./commonly_pics/close.png', grayscale=True, confidence=0.7)except:passpyautogui.moveTo(x, y)pyautogui.click()if __name__ == '__main__':import osnow_day = datetime.now().strftime("%Y-%m-%d")try:os.makedirs("./appPng/" + now_day)except:passos.system("ls /home/kylin/.local/share/applications/*.desktop> apk.txt")ifile = "apk.txt"with open(ifile, 'r', encoding='utf8') as f:res = f.read()datas = re.findall(".*share/applications/(.*?).desktop", res)android = Android()while True:for i in datas:android.screen(i)
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。