Python - Pynput 0000-9999 Schleife?

1 Antwort

Vom Fragesteller als hilfreich ausgezeichnet
Die Variable 'n' ist dabei ein Array, das alle Zahlen von 0000 bis 9999 beinhaltet.

Nein, n ist eine Liste von Strings ("0000" bis "9999").

for i in range(10):
  print('{:d}'.format(i).zfill(4))

Das tut dasselbe, nur eben mit format() statt %.

Das Problem dabei: Mit Pynput kann man keine Variablen ausgeben lassen.

Dann nimm doch einfach print().

Ich verstehe nicht, wo Dein Problem liegt. Geht es vielleicht darum, dass keyboard.press() keine String-Listen mag? Dann mach es so:

for s in n:
    for c in s:
        keyboard.press(c)
        keyboard.release(c)
    keyboard.press('\n')
    keyboard.release('\n')

G4M1NGPHOEN1X 
Fragesteller
 26.01.2020, 17:21

Danke!

Es funktioniert jetzt, und ich muss nur noch etwas mit dem Timing und dem Pynput "Keylogger" rumprobieren, um das Skript zu starten.

Code:

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


keyboard = Controller()
n = ["%.4d" % i for i in range(0,10000)]


for s in n:
	for c in s:
		keyboard.press(c)
		keyboard.release(c)
	sleep(1)
	keyboard.press('e')
	keyboard.release('e')
	sleep(0.3)
0
ralphdieter  26.01.2020, 17:52
@G4M1NGPHOEN1X
	sleep(1)

in einer Schleife, die 10000-mal durchlaufen wird? Du scheinst viel Zeit zu haben ;)

0
G4M1NGPHOEN1X 
Fragesteller
 26.01.2020, 18:18
@ralphdieter

Das ist als Brute-Force-Tool für die ARK S+ Mod gedacht, um so ein Panel zu brute-forcen. Immer wenn man eine falsche PIN eingibt, schließt sich das Panel, deshalb auch das 'e'. Die beiden sleeps sind jetzt auf 0.6 und 0.3. Schneller geht leider nicht. Aber es funktioniert. Wenn ich mal wieder Zeit dafür hab, bastel ich noch ein schönes GUI dazu...

1
ralphdieter  26.01.2020, 18:30
@G4M1NGPHOEN1X

0.6 und 0.3, also insgesamt "nur" 9000 Sekunden oder 2 1/2 Stunden. Wenn man nicht daneben sitzen muss, ist das ok.

0
G4M1NGPHOEN1X 
Fragesteller
 27.01.2020, 07:03
@ralphdieter

Gibts noch ne Möglichkeit, die Schleife zu pausieren und später wieder ab dem Punkt zu starten?

0