コード例 #1
0
ファイル: repeatkey.py プロジェクト: yue-xu/press-keys
from pynput.keyboard import Key, Controller
import time

key = input("enter a letter: ")
n = int(input("enter the amount of times to repeat: "))
interval = int(input("enter the interval: "))

keyboard = Controller()

time.sleep(3) #3 second delay to select active window
for i in range(n):
    keyboard.press(key)
    keyboard.press(Key.enter)
    time.sleep(interval)
コード例 #2
0
        if len(self._cur_keys) >= 3:
            combo = self._cur_keys[-3:]
            return combo

    def _cleaner(self):
        while True:
            time.sleep(0.7)
            self._cur_keys.clear()

    def get_parsed_comob(self):
        combo = self.get_combo()
        if combo:
            key = ''.join(combo)
            if key in self._keymap.keys():
                return self._keymap[key]


def send(combo_content):
    for _ in range(3):
        k.press(Key.backspace)
        k.release(Key.backspace)
    k.type(combo_content)


cl = ComboListener()
k = Controller()
while True:
    combo_conten = cl.get_parsed_comob()
    if combo_conten:
        send(combo_conten)
コード例 #3
0
 def get_result(self, cont):
     time.sleep(10)
     Controller().press('w')
     Controller().release('w')
     cont.show_frame(result_page)
コード例 #4
0
 def __init__(self):
     self.keyboard = Controller()
コード例 #5
0
from pynput import keyboard
from pynput.keyboard import Key, Controller
import potplayer

volume_max = 1000
volume_min = 0

volume_data = 100
volume_range = volume_max - volume_min
volume_section = 5

# initiate object
key_press = Controller()
playlist = potplayer.PlayList()


def on_press(key):
    try:
        print('alphanumeric key {0} pressed'.format(key.char))
        # start potplayer

        if key.char == 'p':
            potplayer.run(r"music\\amelie_ost.mp3")

        # volume control potplayer
        if (key.char == 'w'):
            key_press.press(Key.up)
            key_press.release(Key.up)
        if (key.char == '-'):
            key_press.press(Key.left)
            key_press.release(Key.left)
コード例 #6
0
from pynput.keyboard import Key, Controller
import time

keyboard = Controller()  # Init the v-keyboard


# @param a string
def pressKey(key):
    keyboard.press(key)
    keyboard.release(key)

    print("Pressed {}".format(key))


def main():
    while True:
        #pressKey('a')
        pressKey(Key.ctrl_l)
        time.sleep(2)


if __name__ == "__main__":
    # execute only if run as a script
    main()
コード例 #7
0
 def __init__(self):
     self.keyboard = Controller()
     self.moving = None
コード例 #8
0
ファイル: downloadfile.py プロジェクト: sztang/zoomsumm
def rundownload(url=None):
    # url = 'https://nyu.zoom.us/rec/play/UKPXKO2LUQA6ysW8ogVJ5rkihlQ7VvMTG_oEJiPM043SFe5SennJZH5jcns0FMArfFhw7IluTVdVaMcf.ZBgkgKliJdnSdPfM?continueMode=true'
    while not url:
        url = input('Hurl the URL this way my guy (or Q to go back):\n')
        if url in ['q', 'Q']:
            return

    options = webdriver.ChromeOptions()
    options.add_argument('--load-extension=enable')
    # options.add_argument('--headless')
    options.add_experimental_option(
        "prefs", {
            "download.default_directory": ROOT_DIR,
            "download.prompt_for_download": False,
            "download.directory_upgrade": True,
            "safebrowsing.enabled": True
        })

    driver = webdriver.Chrome('./chromedriver', options=options)
    driver.get(url)
    print(driver.title)

    config = configparser.ConfigParser()
    config.read('credentials.ini')
    USERNAME = config.get('ZOOM', 'USER')
    PASSWORD = config.get('ZOOM', 'PASS')

    def nyulogin():
        driver.find_element_by_class_name('login-btn-sso').click()
        # sleep(1.5)

        domain = driver.find_element_by_name('domain')
        domain.clear()
        domain.send_keys('nyu')
        driver.find_element_by_class_name('submit').click()
        # sleep(1.5)

        username = driver.find_element_by_id("username")
        username.clear()
        username.send_keys(USERNAME)

        password = driver.find_element_by_id("password")
        password.clear()
        password.send_keys(PASSWORD)

        driver.find_element_by_name('_eventId_proceed').click()
        # sleep(1.5)

        driver.switch_to.frame(driver.find_element_by_id('duo_iframe'))
        # if ('Choose an authentication method' in driver.page_source):
        #     print('text exists')
        driver.find_element_by_xpath(
            "//button[contains(text(), 'Push')]").click()

    if ('Sign In' in driver.page_source):
        print('Need to sign in')
        nyulogin()
        sleep(10)  # wait for user to do 2FA
    """
    Improvement: after sleep (waiting for user 2FA), listen for video page to load.
    Once loaded, stop the sleep and go straight to download actions.
    """

    video = driver.find_element_by_tag_name("video")
    videosrc = video.get_attribute('src')
    videodate = videosrc.split('GMT', 1)[1]
    videodate = videodate.split('-', 1)[0]
    title = driver.title
    if ' Zoom' in title:
        title = title.replace(' Zoom', '')
    for c in [':', ' ', '-']:
        title = title.replace(c, '_')
    if title[-1] != '_':
        title = title + '_'
    filename = title + videodate
    for x in ['__', '___']:
        filename = filename.replace(x, '_')
    filename = filename + '.mp4'
    print(filename)

    # selenium right click on video, pynput simulate keyboard
    # down arrow x4 (to reach 'Save Video As'), enter, enter again at save window
    from pynput.keyboard import Key, Controller
    keyboard = Controller()
    action = ActionChains(driver)
    action.context_click(video).perform()
    sleep(1.5)

    for _ in range(4):
        keyboard.press(Key.down)
        keyboard.release(Key.down)
    keyboard.press(Key.enter)
    keyboard.release(Key.enter)
    sleep(5)

    keyboard.type(ROOT_DIR + "/file_io")  # enter download directory
    keyboard.press(Key.enter)
    keyboard.release(Key.enter)
    sleep(1)

    keyboard.type(filename)  # enter download name
    keyboard.press(Key.enter)  # confirm download
    keyboard.release(Key.enter)

    sleep(15)  # wait for download to finish
    driver.close()
    return filename
コード例 #9
0
import sys
import win32com.client as win32
from win32com.client import constants
from pynput.keyboard import Key, Controller
from pynput.mouse import Button, Controller
import time
import thread
import pythoncom

path = sys.argv[1]
# Create list of paths to .doc files
time.sleep(4)
pythoncom.CoInitialize()
path1 = 'C:\\..\\..\\..\\..\\' + path + '\\*.doc'
paths = glob(path1)
mouse = Controller()


def my_mouse():
    time.sleep(2)
    mouse.position = (953, 364)
    time.sleep(1)
    mouse.press(Button.left)
    mouse.release(Button.left)

    time.sleep(2)
    mouse.position = (991, 413)
    time.sleep(1)
    mouse.press(Button.left)
    mouse.release(Button.left)
    thread.exit()
コード例 #10
0
import sys
from config import config
import argparse
import socket
from pynput.keyboard import Controller 
import asyncio
import websockets
import json, time

"""
    osu! mobile clicker
    transforms your smartphone into keyboard clicker
    :author Yshmeel
"""

keyboard_controller = Controller() 

# https://stackoverflow.com/a/1267524
listen_port = 3125

parser = argparse.ArgumentParser(description='Setting up socket-server')
parser.add_argument("--ip", type=str, help="ip to listen")
parser.add_argument("--port", type=str, help="port to listen")

args = parser.parse_args()
if args.ip != None:
    listen_ip = args.ip
else:
	listen_ip = (([ip for ip in socket.gethostbyname_ex(socket.gethostname())[2] if not ip.startswith("127.")] or [[(s.connect(("8.8.8.8", 53)), s.getsockname()[0], s.close()) for s in [socket.socket(socket.AF_INET, socket.SOCK_DGRAM)]][0][1]]) + ["no IP found"])[0]
if args.port != None:
    listen_port = args.port