如何在不使用ram的情况下在pynput中的代码上循环,这是无限的

时间:2018-09-26 14:17:50

标签: python pynput

在将这段代码循环用于python和编码方面的尝试时遇到了一些麻烦,并试图使其成为我玩的afk机器

这是代码,我试图使该类型不断重复输入,请帮助我尝试制造afk机器,因为我使用的程序已经用完了几天,所以我试图对此进行更新对于愚蠢的问题,但我尝试过For循环和while循环,但我无法让它们正常工作

from pynput.keyboard import Key, Controller
import time


keyboard = Controller ()

time.sleep(0.1)
for char in "vcmine start":
    keyboard.press(char)
    keyboard.release(char)
    time.sleep(0.03)

keyboard = Controller()

keyboard.press(Key.enter)
keyboard.release(Key.enter)

1 个答案:

答案 0 :(得分:0)

我想你真的可以做这样的事情。

from pynput.keyboard import Key, Controller, Listener
import time

def on_press(key):
    print('{0} pressed'.format(
        key))

def on_release(key):
    print('{0} release'.format(
        key))
    if key == Key.esc:
        # Stop listener
        return False

# Collect events until released
with Listener(
        on_press=on_press,
        on_release=on_release) as listener:
    listener.join()

keyboard = Controller ()# You should only need to define this once
while(True):# This will repeat the indented code below forever   
    time.sleep(0.1)
    for char in "vcmine start":
        keyboard.press(char)
        keyboard.release(char)
        time.sleep(0.03)

    keyboard.press(Key.enter)
    keyboard.release(Key.enter)
# However the only way you can stop it is by closing the program

这几乎是从https://pythonhosted.org/pynput/keyboard.html复制并粘贴的 在“监视键盘”部分下。 首先运行代码,然后将光标放在要键入文本的位置,然后按键盘上的esc键,其余代码现在将运行,并在所需位置键入所需内容。

还请注意,如果您运行代码,然后在运行时将光标放在另一个文本字段中,它将开始在此处键入。

for和while循环一开始可能会令人困惑,但一定要仔细阅读它们,因为它们在编码中使用很多,并且非常有用。尽管Python是我最喜欢的语言,但是在如何定义循环方面,它有更多的选择,一开始可能会让人感到困惑。

使用Google ALOT查找有关该主题的教程和YouTube视频(那里有很多很棒的信息)。