import os
from pykeyboard import PyKeyboard
from pymouse import PyMouse
import time,random
class EasyMonkey():
def __init__(self):
# 实例化鼠标键盘对象
self.mouse = PyMouse()
self.keyboard = PyKeyboard()
#产生一个随机坐标
def get_position(self):
x=random.randint(0,1600)
y=random.randint(0,900)
print(x,y)
return x,y
# 封装鼠标操作
# 模拟鼠标左键单击
def click_left(self):
x,y = self.get_position()
self.mouse.click(x,y)
print("鼠标在%d,%d位置进行了左键单击操作"%(x,y))
time.sleep(0.5)
return x,y
# 模拟鼠标左键双击
def double_click_left(self):
x,y = self.get_position()
self.mouse.click(x, y,n=2)
print("鼠标在%d,%d位置进行了左键双击操作" % (x, y))
time.sleep(0.5)
return x,y
# 模拟鼠标右键单击
def click_right(self):
x, y = self.get_position()
self.mouse.click(x, y,button=2)
print("鼠标在%d,%d位置进行了操作" % (x, y))
time.sleep(0.5)
return x,y
# 模拟使用键盘随机按键
def enter_key(self):
x,y=self.get_position()
self.mouse.click(x,y)
keys=["a","b","c","d",self.keyboard.numpad_keys[1],self.keyboard.space]
index = random.randint(0,len(keys)-1)
k=keys[index]
self.keyboard.press_key(k)
self.keyboard.release_key(k)
print("在%d,%d位置随机按键操作"%(x,y))
time.sleep(0.5)
return x,y
# 模拟使用键盘产生随机输入
def input_string(self):
x,y=self.get_position()
content = ['djfa','fdhkaj','fdsah','fdasf']
# 随机产生列表下标
index = random.randint(0,len(content)-1)
str=content[index]
self.keyboard.type_string(str)
print("在%d,%d位置键盘产生随机输入" % (x, y))
time.sleep(0.5)
return x,y
#启动函数
def start(self,count,name):
#start /b :不阻塞当前线程
# os.system("start /b %s"%(name))
time.sleep(5)
for i in range(count):
rad = random.randint(1, 5)
if rad == 1:
x,y=self.click_left()
elif rad == 2:
x,y=self.double_click_left()
elif rad == 3:
x,y=self.click_right()
elif rad == 4:
x,y=self.enter_key()
elif rad == 5:
x,y=self.input_string()
with open("easy.txt","a",encoding="utf-8") as f:
f.write(str(rad)+":(%d,%d)\n"%(x,y))
if __name__ == '__main__':
time.sleep(3)
easyMonkey=EasyMonkey()
easyMonkey.start(100,"chrome.exe")