电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

Python 隨機按鍵模擬2小時

瀏覽:41日期:2022-06-30 18:22:17
案例故事:

Android終端(車載,手機)等,

需要模擬進行隨意進行各類按鍵(車載方向盤按鍵,手機硬按鍵)的操作,測試系統對隨機按鍵事件的響應穩定性,一般測試2小時。

準備階段

一般是用adb shell input keyevent + KeyCode 來模擬按鍵事件。比如adb shell input keyevent 24 可以模擬“音量加鍵”,以下是比較常用的幾個按鍵的鍵值表。

KeyCode 釋義 3 Home鍵 4 返回鍵 5 電話撥號鍵 24 音量加鍵 25 音量減鍵 26 電源鍵 27 照相機啟動鍵 87 多媒體下一曲鍵 88 多媒體上一曲鍵 91 音量靜音鍵

Python批處理腳本形式

批量處理腳本的特點是:批量順序執行語句

# coding=utf-8 import osimport timeimport random TIMEOUT= 7200 # 2小時(7200s) 常量once_time = time.time() # 獲取當前時間戳,并保存到一個變量keycode_dict = {3: 'HOME鍵', 4: '返回鍵', 5: '電話撥號鍵', 24: '音量加鍵',25: '音量減鍵', 26: '電源鍵', 27: '照相機啟動鍵', 87: '下一曲鍵',88: '上一曲鍵', 91: '靜音鍵'} # 循環獲取當前時間,與once_time變量做時間戳做減法while time.time() - once_time <= TIMEOUT: # 隨機選擇字典的某個“鍵” keycode = random.choice(list(keycode_dict.keys())) command = 'adb shell input keyevent %s' % keycode print('成功按下了%s' % keycode_dict[keycode]) os.system(command) time.sleep(0.5) # 間隔0.5s,再進行下一次按鍵模擬 print('已經進行了 %d 秒..., 一共需要測試 %d 秒' % (time.time() - once_time, TIMEOUT)) os.system('pause')Python面向過程函數形式

看哪些代碼塊,可以組成一個具體的功能,這個案例,可以用input_keyevent(), 代表輸入按鍵事件的功能函數,這個函數可以接收參數輸入,可以指定輸入多久的按鍵事件。

# coding=utf-8 import osimport timeimport random def input_keyevent(timeout): once_time = time.time() # 獲取當前時間戳,并保存到一個變量 keycode_dict = {3: 'HOME鍵', 4: '返回鍵', 5: '電話撥號鍵', 24: '音量加鍵', 25: '音量減鍵', 26: '電源鍵', 27: '照相機啟動鍵', 87: '下一曲鍵', 88: '上一曲鍵', 91: '靜音鍵'} # 循環獲取當前時間,與once_time變量做時間戳做減法 while time.time() - once_time <= timeout: # 隨機選擇字典的某個“鍵” keycode = random.choice(list(keycode_dict.keys())) command = 'adb shell input keyevent %s' % keycode print('成功按下了%s' % keycode_dict[keycode]) os.system(command) time.sleep(0.5) # 間隔0.5s,再進行下一次按鍵模擬 print('已經進行了 %d 秒..., 一共需要測試 %d 秒' % (time.time() - once_time, timeout)) input_keyevent(7200)os.system('pause')Python面向對象類形式

1.以'萬物皆可歸類'的思想, 先抽象化出一個類來,類名一般建議用'名詞', 所以我們命名為'KeyeventInputter',代表按鍵事件輸入器, 且一般要駝峰式(首字母大寫)來規范類的命名。

2.養成良好的類的初始化(__init__)的習慣,初始化過程中, 可以定義屬性,self.keycode_dict。

3.定義方法(函數), input_keyevent函數。4.類是一個抽象的事物, 必須實例化成具體的對象后,才能進行調用, 所以我們實例化并命名成了k_obj, 表明是一個對象。5.實例化成具體對象后, 對象就可以調用input_keyevent這個函數了。

# coding=utf-8 import osimport timeimport random class KeyeventInputter(): def __init__(self): self.keycode_dict = {3: 'HOME鍵', 4: '返回鍵', 5: '電話撥號鍵', 24: '音量加鍵', 25: '音量減鍵', 26: '電源鍵', 27: '照相機啟動鍵', 87: '下一曲鍵', 88: '上一曲鍵', 91: '靜音鍵'} def input_keyevent(self, timeout): once_time = time.time() # 獲取當前時間戳,并保存到一個變量 # 循環獲取當前時間,與once_time變量做時間戳做減法 while time.time() - once_time <= timeout: # 隨機選擇字典的某個“鍵” keycode = random.choice(list(self.keycode_dict.keys())) command = 'adb shell input keyevent %s' % keycode print('成功按下了%s' % self.keycode_dict[keycode]) os.system(command) time.sleep(0.5) # 間隔0.5s,再進行下一次按鍵模擬 print('已經進行了 %d 秒..., 一共需要測試 %d 秒' % (time.time() - once_time, timeout)) k_obj = KeyeventInputter()k_obj.input_keyevent(7200)os.system('pause')運行方式與效果

確保Android設備通過USB線與電腦連接了,adb設備有效連接,以上代碼的3種實現形式都可以直接運行,比如保存為random_keyevent.py并放在桌面,建議python random_keyevent.py運行,當然也可以雙擊運行。

運行效果如下:

Python 隨機按鍵模擬2小時

以上就是Python 隨機按鍵模擬2小時的詳細內容,更多關于Python 隨機按鍵模擬的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 光伏家 - 太阳能光伏发电_分布式光伏发电_太阳能光伏网 | 钢格板|镀锌钢格板|热镀锌钢格板|格栅板|钢格板|钢格栅板|热浸锌钢格板|平台钢格板|镀锌钢格栅板|热镀锌钢格栅板|平台钢格栅板|不锈钢钢格栅板 - 专业钢格板厂家 | 昆明网络公司|云南网络公司|昆明网站建设公司|昆明网页设计|云南网站制作|新媒体运营公司|APP开发|小程序研发|尽在昆明奥远科技有限公司 | 高温链条油|高温润滑脂|轴承润滑脂|机器人保养用油|干膜润滑剂-东莞卓越化学 | 手机游戏_热门软件app下载_好玩的安卓游戏下载基地-吾爱下载站 | 天一线缆邯郸有限公司_煤矿用电缆厂家_矿用光缆厂家_矿用控制电缆_矿用通信电缆-天一线缆邯郸有限公司 | 洛阳永磁工业大吊扇研发生产-工厂通风降温解决方案提供商-中实洛阳环境科技有限公司 | 丝杆升降机-不锈钢丝杆升降机-非标定制丝杆升降机厂家-山东鑫光减速机有限公司 | hdpe土工膜-防渗膜-复合土工膜-长丝土工布价格-厂家直销「恒阳新材料」-山东恒阳新材料有限公司 ETFE膜结构_PTFE膜结构_空间钢结构_膜结构_张拉膜_浙江萬豪空间结构集团有限公司 | 订做不锈钢_不锈钢定做加工厂_不锈钢非标定制-重庆侨峰金属加工厂 | 间苯二酚,间苯二酚厂家-淄博双和化工 | 主题班会网 - 安全教育主题班会,各类主题班会PPT模板 | 北京企业宣传片拍摄_公司宣传片制作-广告短视频制作_北京宣传片拍摄公司 | 莱州网络公司|莱州网站建设|莱州网站优化|莱州阿里巴巴-莱州唯佳网络科技有限公司 | 煤粉取样器-射油器-便携式等速飞灰取样器-连灵动 | 软文推广发布平台_新闻稿件自助发布_媒体邀约-澜媒宝 | 气动隔膜阀_气动隔膜阀厂家_卫生级隔膜阀价格_浙江浙控阀门有限公司 | 锂电混合机-新能源混合机-正极材料混料机-高镍,三元材料混料机-负极,包覆混合机-贝尔专业混合混料搅拌机械系统设备厂家 | app开发|app开发公司|小程序开发|物联网开发||北京网站制作|--前潮网络 | 双段式高压鼓风机-雕刻机用真空泵-绍兴天晨机械有限公司 | 臻知网大型互动问答社区-你的问题将在这里得到解答!-无锡据风网络科技有限公司 | 纸箱抗压机,拉力机,脂肪测定仪,定氮仪-山东德瑞克仪器有限公司 | 沈阳建筑设计公司_加固改造设计_厂房设计_设计资质加盟【金辉设计】 | 乐泰胶水_loctite_乐泰胶_汉高乐泰授权(中国)总代理-鑫华良供应链 | 湖南自考_湖南自学考试网 | 锡膏喷印机-全自动涂覆机厂家-全自动点胶机-视觉点胶机-深圳市博明智控科技有限公司 | 胶辊硫化罐_胶鞋硫化罐_硫化罐厂家-山东鑫泰鑫智能装备有限公司 意大利Frascold/富士豪压缩机_富士豪半封闭压缩机_富士豪活塞压缩机_富士豪螺杆压缩机 | 医学模型生产厂家-显微手术模拟训练器-仿真手术模拟训练系统-北京医教科技 | 厦门ISO认证|厦门ISO9001认证|厦门ISO14001认证|厦门ISO45001认证-艾索咨询专注ISO认证行业 | 上海洗地机-洗地机厂家-全自动洗地机-手推式洗地机-上海滢皓洗地机 | 空冷器|空气冷却器|空水冷却器-无锡赛迪森机械有限公司[官网] | 网站制作优化_网站SEO推广解决方案-无锡首宸信息科技公司 | 带式过滤机厂家_价格_型号规格参数-江西核威环保科技有限公司 | 吹塑加工_大型吹塑加工_滚塑代加工-莱力奇吹塑加工有限公司 | 定制异形重型钢格栅板/钢格板_定做踏步板/排水沟盖板_钢格栅板批发厂家-河北圣墨金属制品有限公司 | 气象监测系统_气象传感器_微型气象仪_气象环境监测仪-山东风途物联网 | 龙门加工中心-数控龙门加工中心厂家价格-山东海特数控机床有限公司_龙门加工中心-数控龙门加工中心厂家价格-山东海特数控机床有限公司 | 长沙发电机-湖南发电机-柴油发电机供应厂家-长沙明邦智能科技 | 高扬程排污泵_隔膜泵_磁力泵_节能自吸离心水泵厂家-【上海博洋】 | 海南在线 海南一家| 合肥废气治理设备_安徽除尘设备_工业废气处理设备厂家-盈凯环保 合肥防火门窗/隔断_合肥防火卷帘门厂家_安徽耐火窗_良万消防设备有限公司 |