def _play(self, speed_factor=7.0, include_clicks=True, include_moves=True, include_wheel=True): # For hotkey management state = keyboard.stash_state() last_time = None for event in self.events: if speed_factor > 0 and last_time is not None: time.sleep((event.time - last_time) / speed_factor) last_time = event.time if isinstance(event, KeyboardEvent): key = event.scan_code or event.name keyboard.press(key) if event.event_type == KEY_DOWN else keyboard.release(key) if isinstance(event, ButtonEvent) and include_clicks: if event.event_type == UP: mouse.release(event.button) else: mouse.press(event.button) elif isinstance(event, MoveEvent) and include_moves: mouse.move(event.x, event.y) elif isinstance(event, WheelEvent) and include_wheel: mouse.wheel(event.delta) # For hotkey management keyboard.restore_modifiers(state)
def fishing_farm(): print('Program started') print('Hold + to start farming') print('Hold - to stop farming') print('Hold * to exit the program') while True: sleep(0.5) if kb_is_pressed('*'): print('Exiting Program') exit(0) if kb_is_pressed('+'): print('Starting Farm') start = datetime.datetime.now() while True: sleep(0.5) if not is_pressed('right'): press(button='right') if kb_is_pressed('-'): print('Farm stopped') release(button='right') break if kb_is_pressed('*'): print('Exiting Program') release(button='right') exit(0) if datetime.datetime.now() - start > datetime.timedelta( minutes=3): send_afk_message() start = datetime.datetime.now()
def recievingKeyboardThreadFunc(conn): data = loads(recv_msg(conn).decode()) while data: print data for evt in data["events"]["keyboard"]: print evt try: scan_code = keyboard.key_to_scan_codes(chr(evt["code"]))[0] except ValueError: try: scan_code = keycodes[evt["code"]] except IndexError: continue if evt["type"] == "DOWN": keyboard.press(scan_code) else: keyboard.release(scan_code) for evt in data["events"]["mouse"]: print "MOUSEEVENT:", evt if evt == "Move": newPos = evt["pos"] mouse.move(newPos[0], newPos[1], duration=0.15) elif evt == "LeftDown": mouse.press() elif evt == "LeftUp": mouse.release() try: recieved = recv_msg(conn).decode() except socket.error: break data = loads(recieved)
def SubProcedure_MouseDragFrom(self,data): mouse.move(self.Points[int(data[0])][0],self.Points[int(data[0])][1]) if len(data)>1: time.sleep(float(data[1])/1000) mouse.press(button='left') if len(data)>2: time.sleep(float(data[2])/1000) return 1
def pressleft(): if (mouse.is_pressed(button='left')): # release mouse.release(button='left') else: # press mouse.press(button='left')
def pressright(): if (mouse.is_pressed(button='right')): # release mouse.release(button='right') else: # press mouse.press(button='right')
def buttonDown(self, button=mouse.LEFT): """ Holds down the specified mouse button. Use Mouse.LEFT, Mouse.MIDDLE, Mouse.RIGHT """ self._lock.acquire() mouse.press(button) self._lock.release()
def continue_left_click(): while True: if mouse.is_pressed('left'): pos = mouse.get_position() print("\r{:40}".format("Left click {}".format(pos))) mouse.press('left') mouse.release('left') mouse.press('left') time.sleep(float(CONFIG_DICT[CONFIG_KEY_INTERVAL_LEFT_CLICK]))
def click(self, x=None, y=None): if x is None or y is None: x, y = mouse.get_position() x = int(x) y = int(y) mouse.move(x, y) mouse.press(button='left') time.sleep(self.click_delay) mouse.release(button='left')
def __hold(self, peripheral, key, seconds): if peripheral == self.__KEYBOARD: keyboard.press(key) sleep(seconds) keyboard.release(key) elif peripheral == self.__MOUSE: mouse.press(key) sleep(seconds) mouse.release(key)
def simulate_mouse_press(self, button): """ Simulate mouse key press with "keyboard" module :param char: Character for simulation :return: None """ enablePrint() self.key = button print("Pressed Mouse Button: {}".format(self.key)) blockPrint() mouse.press(self.key)
def main(): pygame.init() worker = Worker() print('Controllers:') joysticks = [] for i in range(pygame.joystick.get_count()): j = pygame.joystick.Joystick(i) print(' ', j.get_name()) j.init() joysticks.append(j) print('main loop...') try: worker.start() while True: for event in pygame.event.get(): if event.type == pygame.JOYBUTTONDOWN: print(event.button) if event.button in (0, 7, 8, 9, 10): print('press') mouse.press() elif event.button == 11: keyboard.press_and_release('up') elif event.button == 12: keyboard.press_and_release('down') elif event.button == 13: keyboard.press_and_release('left') elif event.button == 14: keyboard.press_and_release('right') elif event.type == pygame.JOYBUTTONUP: if event.button in (0, 7, 8, 9, 10): print('release') mouse.release() elif event.type == pygame.JOYAXISMOTION: axis, value = event.axis, event.value # print(' ' * (axis + 1), value) value = value**3 * abs(value)**1 value *= SCALE if axis in (0, 2): if abs(value) < DEADZONE: worker.dx = 0 else: worker.dx = value if axis in (1, 3): if abs(value) < DEADZONE: worker.dy = 0 else: worker.dy = value print(worker.dx, '\t', worker.dy) finally: worker.go_on = False worker.join() print('bye')
def runCar(): #Multiple key actions # if __ and ___ #Single actions if drivingForward == True: keyboard.press('w') else: keyboard.release('w') if drivingBackward == True: keyboard.press('s') else: keyboard.release('s') if turningLeft == True: keyboard.press('l') else: keyboard.release('l') if turningRight == True: keyboard.press('r') else: keyboard.release('r') if jumping == True: mouse.press('right') else: mouse.release('right') if boosting == True: mouse.press('left') else: mouse.release('left') if sliding == True: keyboard.press('shift') else: keyboard.release('shift')
def update_mouse(value, button, prev_value, prev_button): x, y = mouse.get_position() x -= monitor.x # Move the mouse if value != prev_value: mouse.move((x + int( (value - prev_value) * conversion * args.sensitivity)) % monitor.width + monitor.x, y) # Handle mouse press if button and not prev_button: mouse.press() elif not button and prev_button: mouse.release()
def Mouse_control(line): for i in range(len(line)): if line[i] == ",": x = line[1:i] y = line[i + 2:-3] state = line[len(line) - 2] print "x=", x, "y=", y, "state =", state, "\n" if mouse.is_pressed(button="middle"): exit() mouse.move(int(x), int(y), absolute=True, duration=0) if state == "1": mouse.press(button='left') print "\a" elif state == "0": mouse.release(button='left') time.sleep(0.01)
def play(self): for action in self.actions: try: action.delay except AttributeError: action = Action(action['button'], action['action'], None, delay=float(action['delay'])) time.sleep(action.delay) if action.action == mouse.UP: mouse.release(action.button) elif action.action == mouse.DOWN: mouse.press(action.button) elif action.action == mouse.DOUBLE: mouse.double_click(action.button)
def test_buttons(self): mouse.press() self.assertEqual(self.flush_events(), [(DOWN, LEFT)]) mouse.release() self.assertEqual(self.flush_events(), [(UP, LEFT)]) mouse.click() self.assertEqual(self.flush_events(), [(DOWN, LEFT), (UP, LEFT)]) mouse.double_click() self.assertEqual(self.flush_events(), [(DOWN, LEFT), (UP, LEFT), (DOWN, LEFT), (UP, LEFT)]) mouse.right_click() self.assertEqual(self.flush_events(), [(DOWN, RIGHT), (UP, RIGHT)]) mouse.click(RIGHT) self.assertEqual(self.flush_events(), [(DOWN, RIGHT), (UP, RIGHT)]) mouse.press(X2) self.assertEqual(self.flush_events(), [(DOWN, X2)])
def enderman_farm(): print('Program started') print('Hold + to start farming') print('Hold - to stop farming') print('Hold * to exit the program') while True: sleep(0.5) if kb_is_pressed('*'): print('Exiting Program') exit(0) if kb_is_pressed('+'): print('Starting Farm') afk_message_start = datetime.datetime.now() eating_start = afk_message_start while True: sleep(1) if not is_pressed('left'): press(button='left') release(button='left') if kb_is_pressed('-'): print('Farm stopped') release(button='left') break if kb_is_pressed('*'): print('Exiting Program') release(button='left') exit(0) if datetime.datetime.now() - eating_start > datetime.timedelta( minutes=1): release(button='left') keyboard.send('9') sleep(0.5) press(button='right') sleep(10) release(button='right') keyboard.send('1') eating_start = datetime.datetime.now() if datetime.datetime.now( ) - afk_message_start > datetime.timedelta(minutes=3): send_afk_message() afk_message_start = datetime.datetime.now()
def main(): button = input('Enter right or left: ') if button in BUTTONS: print('Will start in:') for i in range(START_DELAY, 0, -1): # count START_DELAY seconds and start print(i) time.sleep(1) mouse.press(button=button) # hold the button print('Waiting for escape key in order to stop...') keyboard.wait('esc') # wait for escape key to be pressed mouse.release(button=button) # stop holding print('Done!') else: print('Not a button...')
def send_afk_message(): release('right') keyboard.send("t") sleep(0.1) keyboard.write( 'Hallo, ich bin nicht wirklich online. Das ist nur ein Bot. Wenn schlafen dringend nötig ist dann kick mich bitte wenn es sein muss. :(' ) sleep(0.1) keyboard.send('enter') sleep(0.2) keyboard.send('t') sleep(0.1) keyboard.write( 'Wenn du keine Rechte dazu hast dann hast du wohl Pech gehabt xD Liebe geht raus an alle <3' ) sleep(0.1) keyboard.send('enter') sleep(0.1) press('right')
def getDistance(): while(1): try: text=ser.readline() text=text.decode() if text!='': #print(text) dis = int(text) if dis<=20: if ~mouse.is_pressed(): mouse.press() #mouse.click(button='left'); print("clicked") else: if mouse.is_pressed(): mouse.release() #time.sleep(.03) except: break;
def do_GET(self): self.do_HEAD() # set header # parse url arguments url_args = dict(parse_qsl(urlparse(self.path).query)) # if command exists if "cmd" in url_args: if url_args["cmd"] == "snap": # reply with screenshot if os.path.exists(scr_img): with open(scr_img, 'rb+') as f: self.wfile.write(f.read()) elif url_args["cmd"] == "mouse_position": # calculate `client-server` mouse coordinates POS_X = float(url_args["pos_x"]) POS_Y = float(url_args["pos_y"]) CAX = float(url_args["coord_x"]) CAY = float(url_args["coord_y"]) CBX = float(sz[0]) CBY = float(sz[1]) # precise coordinates ratio coord_x = int(round((CBX / CAX) * POS_X)) coord_y = int(round((CBY / CAY) * POS_Y)) # some rubbber duckies:) #print("my coordinates: {0} ; {1}".format(coord_x, coord_y)) #print(CAX , CBX , CBX , CAX , CBX, POS_X, POS_Y, mouse.get_position()) # move mouse mouse.move(coord_x, coord_y) elif url_args["cmd"] == "mouse_press": button = butts[int(url_args["button"])] mouse.press(button) elif url_args["cmd"] == "mouse_release": button = butts[int(url_args["button"])] mouse.release(button) elif url_args["cmd"] == "key_presses": # press a key (event keycode) charkeycode = int(url_args["keycode"]) keyboard.send(charkeycode)
def __air_routine(self, jump_charge_time, after_jump_time, trick_cycles): # Jump self.__hold(self.__KEYBOARD, 'space', jump_charge_time) # After jump delay sleep(after_jump_time) last_loop = trick_cycles - 1 for loop in range(trick_cycles): # Nose Planker mouse.press(mouse.RIGHT) sleep(0.075) mouse.release(mouse.RIGHT) # Delay sleep(0.35) # Copter keyboard.press_and_release('space') if loop is not last_loop: # Delay sleep(0.35)
def handle_held_button_repetition(self): while True: tick_time = now() on_hold = lambda: None if self.is_mouse_mode else keyboard.press( 'left') on_release = lambda: self.release_mouse_if_pressed( 'left') if self.is_mouse_mode else self.release_key_if_pressed( 'left') self.held_button_action(tick_time, "LEFT", on_hold, on_release) on_hold = lambda: mouse.press( button='right') if self.is_mouse_mode else keyboard.press( 'right') on_release = lambda: self.release_mouse_if_pressed( 'right' ) if self.is_mouse_mode else self.release_key_if_pressed('right') self.held_button_action(tick_time, "RIGHT", on_hold, on_release) on_hold = lambda: mouse.wheel( delta=1) if self.is_mouse_mode else keyboard.press('up') on_release = lambda: None if self.is_mouse_mode else self.release_key_if_pressed( 'up') self.held_button_action(tick_time, "UP", on_hold, on_release) on_hold = lambda: mouse.wheel( delta=-1) if self.is_mouse_mode else keyboard.press('down') on_release = lambda: None if self.is_mouse_mode else self.release_key_if_pressed( 'down') self.held_button_action(tick_time, "DOWN", on_hold, on_release) def get_current_action(btn, action_idx): action_name = self.current_padboard_grill[self.is_pressed[btn] [2]][action_idx] return get_actions_by_name(action_name) for btn, action_idx in [('BTN_NORTH', 0), ('BTN_WEST', 1), ('BTN_EAST', 2), ('BTN_SOUTH', 3)]: on_hold = lambda: get_current_action(btn, action_idx)[1]() on_release = lambda: get_current_action(btn, action_idx)[2]() self.held_button_action(tick_time, btn, on_hold, on_release) time.sleep(self.rapid_fired_frequency)
def Op(key, op, ox, oy): # print(key, op, ox, oy) if key == 1: if op == 100: # 左键按下 mouse.move(ox, oy) mouse.press(button=mouse.LEFT) elif op == 117: # 左键弹起 x, y = mouse.get_position() if ox != x or oy != y: if not mouse.is_pressed(): mouse.press(button=mouse.LEFT) mouse.move(ox, oy) mouse.release(button=mouse.LEFT) elif key == 2: # 滚轮事件 if op == 0: # 向上 mouse.move(ox, oy) mouse.wheel(delta=-1) else: # 向下 mouse.move(ox, oy) mouse.wheel(delta=1) elif key == 3: # 鼠标右键 if op == 100: # 右键按下 mouse.move(ox, oy) mouse.press(button=mouse.RIGHT) elif op == 117: # 右键弹起 mouse.move(ox, oy) mouse.release(button=mouse.RIGHT) else: k = official_virtual_keys.get(key) if k is not None: if op == 100: # 按键按下 keyboard.press(k) elif op == 117: # 按键抬起 keyboard.release(k)
def main(): while True: logger.debug('Waiting for input...') val = int(ser.read()[0]) logger.debug(f'Got {val}') if val == 31: logger.info('Left press') mouse.press(mouse.LEFT) elif val == 32: logger.info('Left release') mouse.release(mouse.LEFT) elif val == 41: logger.info('Middle press') mouse.press(mouse.MIDDLE) elif val == 42: logger.info('Middle release') mouse.release(mouse.MIDDLE) elif val == 51: logger.info('Right press') mouse.press(mouse.RIGHT) elif val == 52: logger.info('Right release') mouse.release(mouse.RIGHT) elif val == 1: logger.info('Move left') mouse.move(x=-1, y=0, absolute=False) elif val == 2: logger.info('Move right') mouse.move(x=1, y=0, absolute=False) elif val == 21: logger.info('Move up') mouse.move(y=-1, x=0, absolute=False) elif val == 22: logger.info('Move down') mouse.move(y=1, x=0, absolute=False) elif val == 11: logger.info('Wheel down') mouse.wheel(-1) elif val == 12: logger.info('Wheel up') mouse.wheel(1)
def fill(x, y, color): px = mouse.get_position()[0] py = mouse.get_position()[1] xF = int(x) + 5 yF = int(y) + 150 if (xF < 5): xF = 5 if (yF < 150): yF = 150 if (xF > 965): xF = 965 if (yF > 730): yF = 730 # select fill color colorChange(colToNum(str(color))) # press can mouse.move(196, 77) time.sleep(0.1) mouse.press(button='left') time.sleep(0.1) mouse.release(button='left') time.sleep(0.1) #press point mouse.move(xF, yF) time.sleep(0.1) mouse.press(button='left') time.sleep(0.1) mouse.release(button='left') time.sleep(0.1) #press brush mouse.move(269, 79) time.sleep(0.1) mouse.press(button='left') time.sleep(0.1) mouse.release(button='left') time.sleep(0.1) #return mouse mouse.move(px, py) time.sleep(0.1)
def buy_and_crunch_macro(): mouse.move(*BUY_XY, duration=.2) time.sleep(.2) mouse.press('left') time.sleep(.1) mouse.release('left') keyboard.send('c') mouse.move(*CRUNCH_XY, duration=.2) time.sleep(.2) mouse.press('left') time.sleep(.1) mouse.release('left') mouse.move(*CONFIRM_XY, duration=.2) time.sleep(.2) mouse.press('left') time.sleep(.2) mouse.release('left')
prev_y = y # Draw spiral canvas = driver.find_element_by_class_name("drawing-board-canvas") location = canvas.location size = canvas.size # Obtain absolute coordinates of the canvas center browser_navigation_panel_height = driver.execute_script( 'return window.outerHeight - window.innerHeight;') x = location['x'] + size['width']/2 y = location['y'] + size['height']/2 + browser_navigation_panel_height mouse.move(x, y) mouse.press(button='left') draw_spiral(5) time.sleep(0.1) # Иначе не дорисовывает mouse.release(button='left') # Make screenshot driver.save_screenshot('pageImage.png') # Crop image border = 5 x = location['x'] y = location['y'] width = location['x']+size['width'] height = location['y']+size['height'] im = Image.open('pageImage.png') im = im.crop((int(x) + border, int(y) + border,
def MouseClick(key, seconds): #key means left or right for this one mouse.press(button=key) #Mouse has a timer otherwise left click may not get registered. In some games it can be 0.1 seconds time.sleep(seconds) mouse.release(button=key)