最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python 隨機(jī)按鍵模擬2小時(shí)

 更新時(shí)間:2020年12月30日 09:50:58   作者:武散人  
這篇文章主要介紹了Python 隨機(jī)按鍵模擬的方法,幫助大家更好的理解和使用python,感興趣的朋友可以了解下

案例故事:

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

需要模擬進(jìn)行隨意進(jìn)行各類按鍵(車載方向盤按鍵,手機(jī)硬按鍵)的操作,
測(cè)試系統(tǒng)對(duì)隨機(jī)按鍵事件的響應(yīng)穩(wěn)定性,一般測(cè)試2小時(shí)。

準(zhǔn)備階段

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

KeyCode 釋義
3 Home鍵
4 返回鍵
5 電話撥號(hào)鍵
24 音量加鍵
25 音量減鍵
26 電源鍵
27 照相機(jī)啟動(dòng)鍵
87 多媒體下一曲鍵
88 多媒體上一曲鍵
91 音量靜音鍵

Python批處理腳本形式

批量處理腳本的特點(diǎn)是:批量順序執(zhí)行語句

# coding=utf-8
 
import os
import time
import random
 
TIMEOUT= 7200 # 2小時(shí)(7200s) 常量
once_time = time.time() # 獲取當(dāng)前時(shí)間戳,并保存到一個(gè)變量
keycode_dict = {3: "HOME鍵", 4: "返回鍵", 5: "電話撥號(hào)鍵", 24: "音量加鍵",
        25: "音量減鍵", 26: "電源鍵", 27: "照相機(jī)啟動(dòng)鍵", 87: "下一曲鍵",
        88: "上一曲鍵", 91: "靜音鍵"}
 
# 循環(huán)獲取當(dāng)前時(shí)間,與once_time變量做時(shí)間戳做減法
while time.time() - once_time <= TIMEOUT:
  # 隨機(jī)選擇字典的某個(gè)“鍵”
  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,再進(jìn)行下一次按鍵模擬
  print("已經(jīng)進(jìn)行了 %d 秒..., 一共需要測(cè)試 %d 秒" % (time.time() - once_time, TIMEOUT))
 
os.system("pause")

Python面向過程函數(shù)形式

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

# coding=utf-8
 
import os
import time
import random
 
 
def input_keyevent(timeout):
  once_time = time.time() # 獲取當(dāng)前時(shí)間戳,并保存到一個(gè)變量
  keycode_dict = {3: "HOME鍵", 4: "返回鍵", 5: "電話撥號(hào)鍵", 24: "音量加鍵",
          25: "音量減鍵", 26: "電源鍵", 27: "照相機(jī)啟動(dòng)鍵", 87: "下一曲鍵",
          88: "上一曲鍵", 91: "靜音鍵"}
 
  # 循環(huán)獲取當(dāng)前時(shí)間,與once_time變量做時(shí)間戳做減法
  while time.time() - once_time <= timeout:
    # 隨機(jī)選擇字典的某個(gè)“鍵”
    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,再進(jìn)行下一次按鍵模擬
    print("已經(jīng)進(jìn)行了 %d 秒..., 一共需要測(cè)試 %d 秒" % (time.time() - once_time, timeout))
 
 
input_keyevent(7200)
os.system("pause")

Python面向?qū)ο箢愋问?br />

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

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

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

# coding=utf-8
 
import os
import time
import random
 
 
class KeyeventInputter():
  def __init__(self):
    self.keycode_dict = {3: "HOME鍵", 4: "返回鍵", 5: "電話撥號(hào)鍵", 24: "音量加鍵",
               25: "音量減鍵", 26: "電源鍵", 27: "照相機(jī)啟動(dòng)鍵", 87: "下一曲鍵",
               88: "上一曲鍵", 91: "靜音鍵"}
 
  def input_keyevent(self, timeout):
    once_time = time.time() # 獲取當(dāng)前時(shí)間戳,并保存到一個(gè)變量
    # 循環(huán)獲取當(dāng)前時(shí)間,與once_time變量做時(shí)間戳做減法
    while time.time() - once_time <= timeout:
      # 隨機(jī)選擇字典的某個(gè)“鍵”
      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,再進(jìn)行下一次按鍵模擬
      print("已經(jīng)進(jìn)行了 %d 秒..., 一共需要測(cè)試 %d 秒" % (time.time() - once_time, timeout))
 
 
k_obj = KeyeventInputter()
k_obj.input_keyevent(7200)
os.system("pause")

運(yùn)行方式與效果

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

運(yùn)行效果如下:

以上就是Python 隨機(jī)按鍵模擬2小時(shí)的詳細(xì)內(nèi)容,更多關(guān)于Python 隨機(jī)按鍵模擬的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Python semaphore evevt生產(chǎn)者消費(fèi)者模型原理解析

    Python semaphore evevt生產(chǎn)者消費(fèi)者模型原理解析

    這篇文章主要介紹了Python semaphore evevt生產(chǎn)者消費(fèi)者模型原理解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03
  • Python數(shù)據(jù)分析庫PyGWalker的強(qiáng)大交互式功能界面探索

    Python數(shù)據(jù)分析庫PyGWalker的強(qiáng)大交互式功能界面探索

    這篇文章主要介紹了Python數(shù)據(jù)分析庫PyGWalker的強(qiáng)大交互式功能界面探索有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • Python中有趣在__call__函數(shù)

    Python中有趣在__call__函數(shù)

    這篇文章主要介紹了Python中有趣在__call__函數(shù),本文直接給出一個(gè)使用實(shí)例,以此來講解__call__函數(shù)的用法,需要的朋友可以參考下
    2015-06-06
  • python中@contextmanager裝飾器的用法詳解

    python中@contextmanager裝飾器的用法詳解

    這篇文章主要介紹了python中@contextmanager裝飾器的用法詳解,@contextmanager 的作用就是我們可以把一個(gè)非自定義類改成一個(gè)上下文管理器,需要的朋友可以參考下
    2023-07-07
  • Python中標(biāo)準(zhǔn)庫array數(shù)組操作舉例詳解

    Python中標(biāo)準(zhǔn)庫array數(shù)組操作舉例詳解

    這篇文章主要介紹了Python中標(biāo)準(zhǔn)庫array數(shù)組操作的相關(guān)資料,Python的array模塊提供了固定類型數(shù)組類,用于高效存儲(chǔ)同類型元素,節(jié)省內(nèi)存并支持?jǐn)?shù)值計(jì)算,需要的朋友可以參考下
    2025-04-04
  • Python3爬蟲全國地址信息

    Python3爬蟲全國地址信息

    今天小編就為大家分享一篇關(guān)于Python3爬蟲全國地址信息,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • Python常用小技巧總結(jié)

    Python常用小技巧總結(jié)

    這篇文章主要介紹了Python常用小技巧,實(shí)例總結(jié)了Python關(guān)于字典、字符串、隨機(jī)數(shù)等操作技巧,非常簡單實(shí)用,需要的朋友可以參考下
    2015-06-06
  • 如何解決MNIST數(shù)據(jù)集下載速度較慢并失敗的問題

    如何解決MNIST數(shù)據(jù)集下載速度較慢并失敗的問題

    這篇文章主要介紹了如何解決MNIST數(shù)據(jù)集下載速度較慢并失敗的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • python簡單貪吃蛇開發(fā)

    python簡單貪吃蛇開發(fā)

    這篇文章主要為大家詳細(xì)介紹了python簡單貪吃蛇開發(fā),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • Python編程基礎(chǔ)之輸入與輸出

    Python編程基礎(chǔ)之輸入與輸出

    這篇文章主要為大家介紹了Python輸入與輸出,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-12-12

最新評(píng)論

宝鸡市| 广汉市| 西昌市| 临沧市| 长岛县| 万全县| 赤壁市| 旺苍县| 滦平县| 八宿县| 迁安市| 萨迦县| 宜黄县| 尚义县| 泰兴市| 阿克苏市| 喀喇沁旗| 苏州市| 车致| 雷波县| 通州市| 宾川县| 吉安县| 南丰县| 格尔木市| 宁波市| 庄浪县| 南京市| 建德市| 忻城县| 集贤县| 孝感市| 东乡族自治县| 昌吉市| 长寿区| 鸡泽县| 贵阳市| 莒南县| 高碑店市| 玉山县| 阳春市|