Python mousewheel scroll simulator script
#!/usr/bin/env python3
import time
import argparse
from pynput.mouse import Controller, Button
def parse_arguments():
parser = argparse.ArgumentParser(description='Simuliert Mausrad-Scrolling')
parser.add_argument('-n', '--total-steps', type=int, default=10000,
help='Gesamtanzahl der Scroll-Schritte (Standard: 10000)')
parser.add_argument('-s', '--steps-per-interval', type=int, default=2,
help='Anzahl der Schritte pro Intervall (Standard: 2)')
parser.add_argument('-i', '--interval', type=float, default=3,
help='Wartezeit zwischen Scrolls in Sekunden (Standard: 3)')
parser.add_argument('-x', '--iterations', type=int, default=3,
help='Anzahl der Auf/Ab-Wiederholungen (Standard: 1)')
return parser.parse_args()
def simulate_mouse_scroll(total_steps, steps_per_interval, interval, iterations):
mouse = Controller()
for iteration in range(iterations):
print(f"\nIteration {iteration + 1}/{iterations}")
# Scroll down
print("Scrolle nach unten...")
steps_done = 0
while steps_done < total_steps:
mouse.scroll(0, -steps_per_interval)
steps_done += steps_per_interval
print(f"Runter: {steps_done} von {total_steps} Schritten")
time.sleep(interval)
# Scroll up
print("\nScrolle nach oben...")
steps_done = 0
while steps_done < total_steps:
mouse.scroll(0, steps_per_interval)
steps_done += steps_per_interval
print(f"Hoch: {steps_done} von {total_steps} Schritten")
time.sleep(interval)
if __name__ == "__main__":
args = parse_arguments()
simulate_mouse_scroll(
args.total_steps,
args.steps_per_interval,
args.interval,
args.iterations
)
If this post helped you, please consider buying me a coffee or donating via PayPal to support research & publishing of new posts on TechOverflow