duda (bucle con python)

Iniciado por **Aincrad**, 15 Septiembre 2017, 19:14 PM

0 Miembros y 2 Visitantes están viendo este tema.

**Aincrad**

Hola a todos los de el foro.

la duda es como podría hacer un bucle a este code para que se ejecute infinitas veces.

Código (python) [Seleccionar]

import ctypes

SetCursorPos = ctypes.windll.user32.SetCursorPos
mouse_event = ctypes.windll.user32.mouse_event

def left_click(x, y, clicks=1):

  SetCursorPos(x, y)
  for i in xrange(clicks):
   mouse_event(2, 0, 0, 0, 0)
   mouse_event(4, 0, 0, 0, 0)

left_click(000, 900) #left clicks at 200, 200 on your screen. Was able to send 10k clicks instantly.


Estuve intentando con For y While , pero no logro como hacerlo.




engel lex

Código (python) [Seleccionar]
while True:
 hacer_algo()


basicamente cambias el for por ese while
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

**Aincrad**

no me funciona.   :-(

básicamente lo que quiero es hacer que ese código se ejecute infinitamente, pero
no logro hacerlo.  :huh:

ya lo he intentado con while True: pero nada.




engel lex

a ver tu codigo con while True
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

**Aincrad**

ya lo solucione. lo estaba escribiendo mal, lo solucione con while.

tenias razón, gracias.

Código (python) [Seleccionar]

import ctypes
SetCursorPos = ctypes.windll.user32.SetCursorPos
mouse_event = ctypes.windll.user32.mouse_event

def left_click(x, y, clicks=1):

  SetCursorPos(x, y)
  for i in xrange(clicks):
   mouse_event(2, 0, 0, 0, 0)
   mouse_event(4, 0, 0, 0, 0)

while 1==1:
    left_click(000, 900) #left clicks at 200, 200 on your screen. Was able to send 10k clicks instantly.




engel lex

fuuu!!!! D:!!! como hacerlo estrepitoso XD



primero, si tienes un bucle infinito y un codigo tan corto no necesitas el def.... segundo, era el while por for XD... tercero... con poner 1 bastaba

Código (python) [Seleccionar]
import ctypes
SetCursorPos = ctypes.windll.user32.SetCursorPos
mouse_event = ctypes.windll.user32.mouse_event

SetCursorPos(x, y)
while True:
  mouse_event(2, 0, 0, 0, 0)
  mouse_event(4, 0, 0, 0, 0)
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

**Aincrad**

ahhh, OK. de verdad es mas corto tan solo 8 lineas en vez de 13.
gracias por el code.   ;D   ;-)




engel lex

el asunto es lo legible...

por otro lado, ese while con esos clicks, si funciona bien, puede casusar inestablilidad del sistema, incluso puede ni si quiera leer la mayor parte... es preferible siempre usar esperas al simular inputs
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.